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)