Java EEでのセッションタイムアウト

java-ee servlets session-timeout weblogic
Java EEでのセッションタイムアウト

セッションタイムアウトの時間をJava EEでどのように定義できますか? web.xmlやHttpSession.setMaxInactiveInterval()でセッションタイムアウトを設定するなど、明白な方法を超えています。

現在、Java EEアプリケーションを確認していますが、セッションタイムアウトの定義に関連するものは見つかりません。 WebアプリはWeblogicにあります。 セッションタイムアウトの定義がないため、セッションが期限切れになることはないと想定しています。

  4  0


ベストアンサー

Weblogicでセッションをタイムアウトする方法を探しているので、追加できます

「weblogic.xml」の「TimeoutSecs」、またはログアウト時に「session.invalidate()」によってセッションが強制終了されるコード内のポイントを確認します。

ところで、それは無限ではありません。

Weblogicでは、web.xmlのデフォルト(値が指定されていない場合)は、http://download.oracle.com/docs/cd/E11035_01/wls100/webapp/weblogic_xmlのweblogic.xmlの「TimeoutSecs」値を使用することです。 .html [デフォルトは3600秒] 60分

4


春関連ではありません:

  • 自分でhttp://en.wikipedia.org/wiki/HTTP_cookie[cookie]を制御します
    response.setHeader(" Set-Cookie "、cookiestring);`によって。 セッションのタイムアウトを制御するのは `expires`属性です。 これは、すべてのservletcontainerまたは `web.xml`デフォルトをオーバーライドしますが、http://download.oracle.com/javaee/6/api/javax/servlet/http/HttpSession.html#setMaxInactiveInterval%28int%29 [ HttpSessionによってオーバーライド可能ですとにかくJavaコードの#setMaxInactiveInterval() `]。

  • servletcontainerレベルでデフォルトを構成します。 たとえばTomcatでは、

    [`]要素の `maxInactiveInterval`属性によって。 これは、 `web.xml`およびhttp://download.oracle.com/javaee/6/api/javax/servlet/http/HttpSession.html#setMaxInactiveInterval%28int%29 [ HttpSession#setMaxInactiveInterval(とにかくJavaコードで))。

” ” ‘

コメント*および質問の更新に従って*更新

指定されていない場合、servletcontainerが管理するデフォルトのタイムアウトが使用されます。 これは通常30分です(Tomcatおよびクローンの場合)。 これにより、セッション内のクライアントから最後のリクエストが送信されてから30分後にセッションが期限切れになります。 また、クライアントがブラウザインスタンスを閉じて再度開くか、Cookieをクリアすると、新しいセッションが作成されます(デフォルトの30分のタイムアウト後に古いセッションは期限切れになります)。

1


タイトルとURLをコピーしました