GWT アプリケーションで、1 人のユーザーを使用して 2 つの GWT クライアントを開き、同じサーバー メソッドを呼び出すと、1 つのクライアントが別のクライアントとまったく同じデータを取得するという問題が見つかりましたが、それは間違っています。この問題を回避する方法。
例: ページを開いて do plus calculate 1+1 を実行し、サーバー メソッド add() から回答を取得すると同時に、別のページを開いて do plus calculate 2+2 を実行し、同じサーバー メソッドから回答を取得します。 1+1=2 と 2+2=2 という同じ答えが得られます。私の英語力は、この問題をより明確に説明するのに十分ではありません。ちなみに、私はグローバル変数を使用してサーブレットにデータを格納しています。
もう一つの例:
public class ConfigServiceImpl extends GwtConfigController implements ConfigService {
private String serviceInstanceId = "";
public String testConnection() {
if(serviceInstanceId.trim().length() > 0){
return "error : serviceInstanceId";
}
serviceInstanceId = "test";
return serviceInstanceId;
}
}
クライアント ウィジェットの init で、testConnection を呼び出します。テストするために 2 つのページを開き、最初のページで "test" を返し、2 番目のページでエラー メッセージを返します。