Очистить объект области сеанса в Guice Servlet - PullRequest
0 голосов
/ 02 августа 2011

В настоящее время у меня есть объект области сеанса, который называется MySessionData.Первоначально при выходе из системы я просто вызывал

getThreadLocalRequest().getSession().invalidate();

. Проблема в том, что теперь у нас есть несколько объектов сессий, и для выхода из системы требуется только очистка ony (MySessionData).Кто-нибудь знает способ очистки одного объекта области Session в Guice.Если бы при этом использовались традиционные объекты сеанса, я бы просто установил для пары ключ-значение значение NULL на карте сеанса.

1 Ответ

1 голос
/ 05 августа 2011

Я обычно использую объекты сессий в качестве Держателей. Если вы реализуете MySessionData таким образом, вам просто нужно определить метод clear () для удаления или очистки всех выделенных объектов.

Если этого недостаточно, вы все равно можете сделать сеанс недействительным. Если вам нужно сохранить ссылку на сеанс для этой аннулирования, вы можете использовать переменную ThreadLocal и установить ее с помощью ServletFilter.

...