2015-01-23 3 views
1

Vaadin과 Spring을 사용하여 WebApplication 개발 중간에 있습니다. AbstractJavaScriptComponent를 사용하고 setInterval()을 사용하여 백엔드에서 데이터를 가져 와서 데이터를 실시간으로 표시합니다.세션은 Vaadin에서 만료되지 않습니다.

내 질문은 요청이 사용자 요청으로 작동하고 Vaadin이 사용자 상호 작용으로 세션을 수신했기 때문에 세션이 시간 초과되지 않았습니다.

어쨌든 사용자 UI 상호 작용에 따라 JavaScript 연결을 무시하고 세션 시간 제한을 활성화 할 수 있습니까?

답변

1

나는이 특정 경우에 도움이 될 것입니다 있는지 확실하지 않습니다,하지만 당신은 지금처럼의 web.xml에 closeIdleSessions라는 이름의 서블릿 매개 변수를 설정할 수 있습니다 :이은 사용자 세션 타임 아웃됩니다

<init-param> 
     <param-name>closeIdleSessions</param-name> 
     <param-value>true</param-value> 
</init-param> 

UI 하트 비트 이벤트에 의해서만 유지됩니다. 적어도 시도해 볼 가치가 있습니다.

+0

예, 정상적인 시나리오에서 작동합니다. 이것은 특별한 것입니다. setInterval()을 사용하여 Java 스크립트를 추가 할 때 백엔드와 기술적으로 계속 통신하므로이 때문에 세션이 활성화되었습니다. 그래서 필요한 것은 자바 스크립트 요청을 무시하는 것입니다. 답변 upvote 자격. : D – ambarox

+0

좋아, upvote 주셔서 감사 드리며 미안하지만 더 이상 도와 드릴 수 없습니다. 이 메소드는 어디에 정의되어있는 setInterval()입니까? –

+0

그것은 Javascript 내부에서 정의되었고 Javascript Connector를 호출하고이를 사용하여 Fronend에 값을 검색합니다. 끝나면 나는 그것을 게시 할 해결책을 제안 할 것이다. 감사 – ambarox

관련 문제