を使用してJboss AS 5.1.0 GA
います。私はそれをJSF 1.2 servlet
実行しています。
拡張するカスタマイズされたセッションリスナーがありますPortalSessionListener
(実行中Liferay 6.0
)
web.xml
で、3分にJboss AS
設定しました。session-timeout
を押して3 分間何もしないJSF servlet
と、カスタマイズされたセッション リスナーが呼び出されて呼び出されます。sessionDestroyed(HttpSessionEvent httpSessionEvent)
サーブレットで何らかのアクティビティを実行すると、3 分前session
に延長されます。それから私は何もしません。今回、ログを見ると、カスタマイズしたセッション リスナーが3 分ではなく 2 分頃に呼び出され、 を呼び出してセッションを無効にしていsessionDestroyed(HttpSessionEvent httpSessionEvent)
ます。
私の最初の質問は、上記のシナリオでセッションの無効化が適切なタイミングで行われないのはなぜですか?
また、 の を構成しsession-timeout
ましweb.xml
たServlet
。ここで述べたように、メソッドを使用しhttpServletRequest.isRequestedSessionIdValid()
てセッションが有効かどうかを確認しています。上記のシナリオでは、約 2 分後に無効化され、今回はセッション無効化ログが出力された後、サーブレットの任意のページをクリックすると、まだ無効化されていないことがわかります。しかし、その発見はちょうど3分後に無効になりました。session
session
session
2 番目の質問は、Jboss AS の web.xml で設定された session-timeout と、サーブレットの web.xml で設定されたセッション タイムアウトの違いはなぜですか?
よろしく、
ヴィカス