Назад | Перейти на главную страницу

Сделать недействительными все сеансы при перезагрузке приложения

есть ли способ, которым tomcat 7 аннулирует все сеансы приложения, когда оно перезагружается вручную через интерфейс управления?

Всего наилучшего, Томас

Из документа Tomcat:

Сохранение при перезапуске

Каждый раз, когда Apache Tomcat завершается в обычном режиме и перезапускается, или когда запускается перезагрузка приложения, стандартная реализация Manager будет пытаться сериализовать все текущие активные сеансы в файл на диске, расположенный с помощью атрибута pathname. Все такие сохраненные сеансы затем будут десериализованы и активированы (при условии, что они не истекли за это время), когда перезагрузка приложения будет завершена.

Чтобы успешно восстановить состояние атрибутов сеанса, все такие атрибуты ДОЛЖНЫ реализовывать интерфейс java.io.Serializable. Вы МОЖЕТЕ заставить Менеджера применить это ограничение, включив элемент в дескриптор развертывания вашего веб-приложения (/WEB-INF/web.xml).

Отключить постоянство сеанса

Как описано выше, в каждом веб-приложении по умолчанию настроена реализация стандартного менеджера, и оно обеспечивает сохранение сеанса при перезапусках. Чтобы отключить эту функцию сохранения, создайте файл конфигурации контекста для своего веб-приложения и добавьте туда следующий элемент:

<Manager pathname="" />

http://tomcat.apache.org/tomcat-7.0-doc/config/manager.html#Persistence_Across_Restarts

Если у вас еще нет файла META-INF / context.xml, вы можете использовать этот:

<Context>
  <Manager pathname="" />
</Context>

Видеть Внедрение стандартного менеджера , вы должны установить для pathName пустую строку или удалить SESSIONS.ser перед загрузкой.