Javadoc forは次のようにRequestContext#fire()
のみ述べています。
RequestContext に関連付けられた累積された変更とメソッド呼び出しを送信します。
Flowセクションの下のGWT可動部品wikiエントリには、次のようにのみ記載されています。
- 蓄積されたすべての操作は、プロキシのプロパティをトラバースすることによってドメイン オブジェクトに適用されます。
- ペイロード内のすべてのメソッド呼び出しが実行されます。
ReqestContext
しかし、これらのメソッドは、クライアント側のインスタンスで「実行」(蓄積) されたのと同じ順序でサーバー側で実行されますか?
私の状況では、クライアント側で実行すると:
context.persist().using(proxy)
context.find(proxy.stableId().to(updatingReceiver))
context.fire()
次に、サーバー側find()
で後で呼び出されることを確認しpersist()
てupdatingReceiver
、更新された(persist()
'ed)エンティティのプロキシを引数として取得できますか?
編集:
さらに進んでReciever
、対応するメソッドが蓄積されたのとまったく同じ順序で応答が呼び出された後にクライアントに戻ることを確認できますか?
最後に、すべてのアクションの後、応答処理の最後に呼び出されるアクションを追加する方法はありReceiver
ますか?
私はこのようなものがうまくいくかもしれないと思った:
requestContext.fire(new Receiver<Void>() {
@Override
public void onSuccess(Void response) {
//Things to do after all receivers
});
そして、それは本当に期待どおりに機能しているように見えますが、JavadocがRequestContext.fire(Receiver)
メソッドについて教えてくれるのは次のとおりです。
エラーまたは検証の失敗を受け取る場合のみ。
私の仮定が正しいかどうかは100%確信が持てません。