2016-06-23 2 views
1

Java 웹 응용 프로그램에서 세션 시간 초과가 작동하지 않습니다. 이 파일은 application.properties 파일에 설정되어 있습니다.Java 웹 응용 프로그램에서 세션 시간 초과가 작동하지 않습니다.

#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 유형입니다.

추신 : 나는이 프로젝트에서 2 일 동안 일해 왔으며, 문제가 충분하지 않아서 필요한 경우 세부 정보를 요청할 수 있습니다.

답변

1

웹 컨테이너가 사용자 정의 속성 및 속성 파일에 대해 알지 못하기 때문에 application.properties 파일에서 timeout 속성을 언급하는 것만으로는 작동하지 않습니다. 코드 어딘가에서 사용되는지 확인하십시오. web.xml에서 수행 할 수 있습니다. 확인 Session TimeOut in web.xml

+0

"boolean notExpired (Date lastAccess)"메서드를 찾았습니다. 거기에 브레이크 포인트를 두었습니다. 로그인 한 다음 아무 것도하지 않으면 몇 분이 지나면이 방법으로 프로그램이 자동으로 실행되고 마지막 액세스가 다시 설정됩니다. 이 때문에 15 분도 넘지 않습니다. –

+0

나는이 타이머가 metthod, filter (ContainerRequestContext ctx)라고 불릴 때 재설정된다는 것도 알았다. 이 메소드는 ContainerRequestFilter를 구현하는 클래스에 있으며, 문서를 읽으면서 각 요청에서 호출됩니다. 그러나 내가 로그인 한 곳에서 아무 것도하지 않으면 어떻게 요청을받을 수 있는지 이해할 수 없습니다. –