あなたの質問を完全に理解するのは難しいです。しかし、私はこれらの線に沿って何度も何度も問題を抱えてきました。だから私は一般的な問題を取得します。
BlazeDS で覚えておくべきことの 1 つは、ネットワーク経由で送信されるクラスがシリアライズおよびデシリアライズされることです。簡単に言えば、ネットワーク上で読み書きされるのは、各クラスのフィールド/プロパティだけです。Java 側と Flex 側の両方で、クラスの基本的なデータ型に細心の注意を払う必要があります。すべてのプロパティ/フィールドと公開ゲッター/セッターが一致していることを確認し、それらが明確であることを確認してください。
「クリア」とは、BlazeDS がどの変数をどこに固定するか判断できない場合に混乱するということです。
Doe クラスは文字列ではありませんが、文字列のみが含まれています。そのため、ネットワーク経由で送信されると、文字列のように見えます。このような場合、ブレーズドが混乱するのを見てきました。2 つの文字列がネットワークを介して到達するのを確認し、どちらがどこに行くのかを把握できません。あなたにとって、John には「Doe」と文字列が含まれていますが、最終的に BlazeDS が実際に認識するのは文字列と文字列だけです。
テストするために、基本的な例で Doe.lastName を Integer または他のオブジェクトに変更します。おそらく、もう一方の端で null が停止する可能性があります。それでも null の場合は、ActionScript と Java クラス (John & Doe) が正しく一致していないか、あいまいすぎます。
基本的なポイントは、データを受信したときに null になった場合、それはシリアル化に問題があることを意味します。BlazeDS は、ネットワークに書き込まれた内容を読み取る方法を理解できません。したがって、フィールド、プロパティ、および公開ゲッター/セッターを調整するか、オブジェクトをシリアル化するための独自のメソッドを作成してください。
このページでは、blazeds のシリアライゼーション (および自分でそれを処理する方法) について詳細に説明しています。
http://livedocs.adobe.com/blazeds/1/blazeds_devguide/help.html?content=serialize_data_2.html
これを完全に理解すると、この種のエラーははるかに少なくなりました。
それが役立つことを願って、
-kg