5.7.1 同一セッションIDの同時実行
同一セッションIDの同時実行機能とは,同じセッションIDを持つ複数のリクエストが,冗長化された複数のJ2EEサーバ,または一つのJ2EEサーバに送信された場合に,複数のリクエストを同時に実行する機能です。複数のリクエスト処理を同時に実行するため,グローバルセッション情報のロック,およびロックの解除は行われません。
-
注意事項
同一セッションIDの同時実行で複数のリクエスト処理を同時に実行する場合,Webアプリケーションが発行するServlet APIの処理順序は不定となります。
同じHTTPセッションに対して,属性を登録するリクエスト(javax.servlet.http.HttpSessionインタフェースのsetAttribute()メソッド)とセッションを無効化するリクエスト(javax.servlet.http.HttpSessionインタフェースのinvalidate()メソッド)を同時に送信したり,セッションを無効化するリクエストを二重に送信したりすると,Servlet APIの処理順序によっては,すでに無効化されたHTTPセッションに対して属性の登録や無効化をしてしまう場合があります。この場合,Servlet APIはjava.lang.IllegalStateException例外をスローします。このため,Servlet APIでjava.lang.IllegalStateException例外がスローされることを考慮してWebアプリケーションを実装してください。