2012-02-01 6 views
1

クライアントで新しい子プロキシのリストを作成し、グラフをサーバに保存すると、ルートノードのみが返されます。私は、サーバーがグラフを正しく保存していることを確認してグラフを返しましたが、GWTはクライアント上のプロキシとしてこれらをロードできません。保存後にサーバからのGWTオブジェクトグラフが空になる

私はモデルを持っている:

class TripProxy { 
    List<PatronProxy> getPatrons(); 
    void setPatrons(List<PatronProxy> patrons); 

    // some other fields 
} 

class PatronProxy { 
    void setName(String name); 
    String getName(); 
} 

私の編集者は、一つ以上の常連客が旅行に追加することができ、新たな旅行を作成します。 saveメソッドは次のようになります。

Trip save(Trip trip); 

単純に与えられた内容を保存して戻します。返された旅行に、付属のパトロンが含まれていないのはなぜですか?私はsave(...)文を適切に指定しています。私はこれを知っています。後で旅行を編集したとき(ブラウザをリフレッシュした後)、私は後援者を見ることができます。

答えて

1

あなたはと言って「適切な(...)文を指定しています」と表示できますか?

with()がサーバから返されているものにのみ関連しているのでは意味をなさない、あなたのは「...ので、私はこれを知っている」:それは、あなたのオブジェクトが保存されているという事実を検証し、と( )はsave()メソッドのwith()ではなくOKです。

save()へのあなたの呼び出しは次のようになります。

+0

(あなたはすぐそこにコンテキストを発射する代わりに、後に1にしたい場合はfire()to()を交換して自由に感じる)

ctx.save(tripProxy).with("patrons").to(new Receiver<TripProxy>() { ... }); 

私のルックス「と」 like:with( "後援者"、 "起源"、 "目的地")。発信元と宛先はそれぞれ新しく作成されたAddressProxyのものです。これらの2つのプロパティはサーバーから正しく返されますが、patronsプロパティはサーバーから返されます。私の_because_は、トリッププロキシが後で編集時にサーバーからフェッチされたときを指していました。編集後の実際の保存ではありません。 – Brad

+0

OK、今はよく分かります。 'Trip save(Trip trip)'メソッドのサーバーコードを表示できますか? 'RequestContext'で他のメソッドをバッチしますか? –

+0

いいえ、私はバッチを使いませんが、私はそれを見つけたと思います。私は通常、私の問題を簡素化しようとするときに質問して、それはあまりにも単純化したように見えます。もう一度saveメソッドを見ると、問題が見つかりました。完全に私のせい。ご協力ありがとうございます! – Brad

関連する問題