0

非常に奇妙な問題があります。Vaadin に基づく Web アプリがあります。1 人のユーザーがログインして何らかのアクションを実行すると、すべてがうまくいきます。2 番目のユーザーがログインすると、最初のユーザーはセッションと 2 番目のユーザーのコンテキストを使用し始めます... 私はそのような種類のコンテキストの読み込みをしています:

 private Context getContextFromSession() {
    WebApplicationContext context = (WebApplicationContext) this.getContext();
    Context c = (Context) context.getHttpSession().getAttribute("context");
    if (c == null) {
        c = new Context();
        context.getHttpSession().setAttribute("context", c);
    }
    System.out.println("Current session: " + context.getHttpSession().toString() + " , context: " + c.toString());
    return c;
}

Vaadin は実際にマルチセッションをサポートしていますか?

4

1 に答える 1

0

はい、Vaadin は複数の同時ユーザーをサポートしています。

ただし、ほとんどの Web アプリケーションと Java アプリケーション サーバーの組み合わせと同様に、ブラウザ インスタンスで一度に開くことができる HTTP セッションは 1 つだけです。たとえば、1 つのブラウザー インスタンスに、ユーザー A 用とユーザー B 用の 2 つの個別のタブを設定することはできません。

それよりも少し複雑ですが、ここから始めるのが良いでしょう。同じブラウザ インスタンスを使用していますか、それとも 2 つの別個の「クライアント」マシン/プロセスですか?

于 2012-11-05T10:29:34.087 に答える