DWRいいよ、DWR

Javaで書いているWebアプリケーションで、JavaScriptで非同期通信を行う必要があったので、以前から気になっていたDWRを使ってみました。

DWRDirect Web Remoting)はAjaxを扱うことに特化したJavaフレームワークです。
Ajaxを使うときに、クライアント側(ブラウザ側)の通信部分はJQueryprototype.jsなどを使えば比較的簡単に行えるのですが、サーバ側でデータをJSONXMLで表示する部分などは手間がかかります。
以前、PHPAjaxを使う処理を書いたのですが、JSON形式にするのは結構面倒くさかったです。JSONなのでJavaScript側で読み込んでからは簡単に使えましたが、XMLだとDOMで処理をしなければなりません。

DWRを使えばJavaのオブジェクトをそのままJavaScriptで使える形に変換してくれるので、このような煩わしい作業から開放されます。
JavaScript側でもJavaのオブジェクトを扱うような感じで受け取ったデータを扱えます。
また、非同期通信やHTML要素から値を取得するライブラリもついています。
使ってみた感じ、使い方に迷うことも特にありませんでした。
Javaを使ったWebアプリケーションを書いていて、Ajaxを使う必要があるならDWRを使うと効率がアップすることは間違いありませんので、ぜひ導入を考えてもらいたいです。

導入は、「DWRはAjaxアプリを作りたいJava開発者にお勧め (1/4):MyEclipseでAjax+Javaをやさしく開発(2) - @IT」が参考になりました。

使ってみて気になった点など

※後で追加するかも。

参考: