DWR(Direct Web Remoting)についてのメモ
下書き段階のまま放置してしまっていました。ちょっと中途半端な気がしますが、公開します。(2007/12/24)
メモ
- JavaScriptからサーバ側のJavaオブジェクトを利用できる。
- Javaのメソッド呼び出しのように記述できる。
- クライアントとサーバ間の非同期通信、サーバとクライアント間のデータ変換などはすべてDWRが処理してくれる
- Apache Software License v2
- サーバ側の処理はPOJO(Plain Old Java Object)として実装するだけでよい
- 単体テストを容易に行なうことができる。
- POJOからサーブレットコンテキストを取得して、HTTPセッションオブジェクトなどにアクセスすることもできる。
- Java - JavaScript間で以下のデータ型の変換をサポートしている(簡単な記述だけでDWRが自動変換する)
- Arrayオブジェクト
- Beanオブジェクト
- Collectionオブジェクト
- DOMオブジェクト
- Enumオブジェクト
- 各種フレームワークとの連携が可能
- 対応ブラウザは以下の通り。
- 動的ページ生成用のユーティリティメソッドが容易されている
- HTMLのテーブルやリストに展開する
- エラーハンドリング、タイムアウトハンドリングの指定が可能
- Reverse Ajax
- DWR 2.0以降からサーバ側のJavaからクライアント側のJavaScriptを非同期に呼び出し可能となった
- 対話型のAjaxアプリケーションの作成が容易になった
関連サイト
追記
DWRは、Dojo Foundationの一部となったようです。(DWR: State of the Union - Joe Walker's Blog)