2010年4月8日木曜日

BlazeDS 入門記(Explicitly mapping ActionScript and Java objects)

BlazeDS architecture / Data serialization / Serializing between ActionScript and Java / Explicitly mapping ActionScript and Java objects

Javaオブジェクトの場合、暗黙的に変換されないクラスは setter/getter メソッドと public のプロパティはシリアライズ対象となり、その他はシリアライズされない。

ActionScriptのオブジェクトの場合もメソッドとかアクセサ等の呼び名が違うだけで内容は同様。

ActionScript側では [RemoteClass(alias=" ")] メタデータを使うことにより、明示的に Java のクラスにマッピング可能。

[Transient] も使えるようですね。


Converting data from Java to ActionScript

変換規則の話。


Configuring AMF serialization on a channel

services-config.xml ファイルに設定可能な serialization 要素の設定項目の話。


Using custom serialization between ActionScript and Java

java の externalize のようなことができるという話。かなり熱いですね。

java 側では普通に java.io.Externalizable を実装すればよく、ActionScript 側では flash.utils.IExternalizable を実装すれば OK です。

いろいろと面白いことができそうですね。オブジェクト毎に最適なフォーマットを適用したり、キャッシュによりシリアライズ・デシリアライズの処理をスキップするとか、デフォルトの方法でシリアライズしつつそのバイナリデータをクライアントとサーバの共通辞書で圧縮して渡すとか。

0 件のコメント:

コメントを投稿