S2AMF
FlexでJavaBeansとデータをやり取りする場合は、つぎのように_remoteClassプロパティでJavaのクラス名を指定します。このとき、Flexの完全限定クラス名とJava側の完全限定クラス名をあわせる必要があります。
この方式がOpenAMFとはあいません。OpenAMFを使う場合とFlex純正を使う場合で、Java側のコードもFlex側のコードも変えたくないので、これは問題です。
class examples.flex.Employee {var _remoteClass;
var empno:Number;
var ename:String;
var hireDate:Date;
function Employee() {
_remoteClass ="examples.flex.Employee";
}
}
おそらく、_remoteClassを指定するとAMFGatewayにはカスタムクラスとして渡されると思うので、S1のNazuna Remotingだとそのまま対応できます。
移植しようかなぁ。S2AMFとして。S2OpenAMFのライバル!!!
追記:_remoteObjectは、Object.registerClass()で登録したカスタムクラスとは違うみたい。AMFGatewayには単にオブジェクトとしてやってきて、_remoteClassプロパティがあるだけとみた。
_remoteClassではなく、Object.registerClass("examples.flex.Employee", Employee);なら、S1でもFlex純正でも動きました。
どうする、id:hoso-kawaさん。