2017-08-10 3 views
2

私はJSFフレームワークに取り組んでいます。 Web.xmlセッションのタイムアウト時間は5分です。 4分後、私はアクティブであるかどうかを確認するためのダイアログを表示します。はいをクリックした後、私はsessionObject.setMaxInactiveInterval(5)を試しました。しかし、セッションは5分後に無効になります。 web.xmlの時間を変更することなくユーザーのセッション時間を動的に拡張する方法はありますか?ユーザーがオンラインになることを確認したときのセッション時間を更新します。

public void refreshSession(){ 
     //code to refresh the session 
     System.out.println("want to stay alive"); 
     HttpSession currentSession = ServerUtility.getSession(); 
     currentSession.setMaxInactiveInterval(2*60); 
    } 
+0

セッションを継続したい場合は、正確な回答コード –

答えて

1

Web.xmlのタイムアウト設定はグローバルで、アプリケーション全体に適用されます。
しかし、あなたはセッション時間を延長したい場合は、次のコードを含むメソッドを作成する必要があります。

HttpSession session = request.getSession(); 
session.setMaxInactiveInterval(5*60); 


何ができるかは、上記のコード

public void extendSession(){ 
HttpSession session = request.getSession(); 
session.setMaxInactiveInterval(5*60); 
} 
実行エンドポイントを作成することです

次のコードを続行したくない場合は、すぐにセッションを終了します。

session.setMaxInactiveInterval(0); // inactive immediately 
+0

を共有してください。これは役に立ちませんでした。 5分後もまだログアウトしている。 –

+0

@ShreekrishnaBellubbiどのサーバーを使用していますか? –

+0

tomcat @mohitsharma –

関連する問題