2016-06-23 4 views
1

Java Webアプリケーションでは、セッションタイムアウトが機能しません。これはファイルapplication.propertiesに設定されています。Java Webアプリケーションでセッションタイムアウトが機能しない

#the timeout for user login, in milliseconds 
#after this time passes, the user is no longer logged in 
mandatory.config.rest.user_login_timeout_ms = 900000 

これは900000 ms(15分)に設定されています。私はまた、私の地元でテストするために6という小さな値に設定しようとしました。それでも動作しません。それはバグ(2週間前、セッションのタイムアウトが働いたようです)のようです。 バックエンドのアプリケーションサーバーは「wildfly-9」です。フロントエンド用のアプリケーションサーバーは「不平等」です。使用されるデータベースはOrientDB型です。

P .:私はこのプロジェクトで2日間働いています。詳細は不十分である可能性がありますので、必要であれば詳細を聞かせてください。

答えて

1

カスタムプロパティとプロパティファイルについてWebコンテナが認識しないため、application.propertiesファイルのtimeoutプロパティを指定するだけで動作しません。コードのどこかで使用されているかどうかを確認してください。チェックSession TimeOut in web.xml

+0

"boolean notExpired(Date lastAccess)"というメソッドが見つかりました。私はブレークポイントをそこに置いた。ログインして何もしない場合、数分後にこの方法でプログラムが自動的に実行され、最後のアクセスがリセットされます。これにより、15分に達することはありません。 –

+0

このタイマーは、metthod、filter(ContainerRequestContext ctx)と呼ばれるときにリセットされています。このメソッドはContainerRequestFilterを実装するクラス内にあり、ドキュメントを読み込むごとにリクエストごとに呼び出されます。しかし、私がログインしている場所を何もしなければ、どのようにリクエストと呼ばれるのか分かりません。 –

関連する問題