2017-10-06 8 views
0

Google Guice의 SessionScope를 사용하려고하고 세션이 삭제되기 전에 SessionScoped 객체에서 데이터를 가져 오려고합니다.HTTP 세션이 파괴되기 전에 메소드 호출

나는 HttpSessionListener.sessionDestroyed()을 사용하려고하지만이 순간에는 세션 속성이 없습니다.

세션 attrubutes가 손상되었을 때 확인할 수있는 다른 방법이 있습니까?

답변

1

HttpSessionListener.sessionDestroyed(HttpSessionEvent se) 매개 변수를 사용하면 HttpSessionEvent.getSession()을 사용하여 HttpSession에 액세스 할 수 있습니다.

그런 다음 일반적인 방법으로 세션 속성에 액세스 할 수 있습니다.

이것이 호출 될 때 종종 연결된 HttpRequest가 없다는 점에 유의하십시오.

+0

답변 해 주셔서 감사합니다. 분명히, 당신 말이 맞습니다. 그러나 우리는 오해했을 것입니다. 당신이 제안하는 방법을 사용할 때 모든 세션 속성이 있지만 Guice SessionScoped 객체가 비어 있습니다. 그래서 SessionScoped를 무효화하기 전에 호출되는 메소드를 찾고 싶습니다. –

+0

아마 Guice는 자신의 청취자가 자신보다 먼저 전화를 받습니까? –

+0

그래서 나는 Guice가 Scopes를 파괴하는 방법을 찾으려고 노력합니다. 어떤 해결책을 찾으면 여기에 넣을 것입니다. 도와 주셔서 감사합니다. –