ユーザーがサイトに来ると、空のショッピングカートがクライアントとサーバー側に作成されます。 SCに製品を追加すると、サーバー側に製品を追加するRPC呼び出しが行われます。我々は、同じクライアント側を同期してUIを更新する必要があります。そうしないと、古いSCへの参照を持つビューに切り替えます。 UIはそれに応じて更新されません(空のSCでは1つの製品が存在します)。GWTクライアントとサーバーのモデルを同期する
ソリューション1
RPC呼び出しが更新さSCを返し、clientSC = returnedSC
を行います。それは非常に効率的ではないので、ワイヤで転送するには多くのデータが必要です。
溶液2
RPCコール添加製品を返し、クライアント側では、(サーバ側のような)データストアに格納するのではなく、リストに製品を追加するメソッドを呼び出しaddProduct
。
溶液3
溶液2と同じが、SCへの参照を有するプレゼンター(Iは、MVPパターンを使用)を通知するためにイベントを使用します。
クライアントとサーバーのモデルを同期させておくのが最も良い方法は何ですか。