Тайм-аут сеанса JBoss
Я пытаюсь написать часть моего приложения, чтобы он обрабатывал таймауты сеанса изящно, но я не могу понять, как длительность времени до истечения таймаута происходит для тестирования.
Я использую JBoss 5.1, и я изменяю session-config свой веб-дескриптор (web.xml), так что сеанс заканчивается через минуту (только для тестирования)
<session-config>
<session-timeout>1</session-timeout>
</session-config>
Но после создания сеанса при входе в систему он никогда не истекает. Никакая настройка, которую я ему даю, вызывает тайм-аут.
В среде tomcat у меня не было этой проблемы. У кого-то была аналогичная проблема с JBoss?
Ответы
Ответ 1
JBoss 5 позволяет определить тайм-аут сеанса для всех приложений по адресу:
deployers/jbossweb.deployer/web.xml
Возможно, это переопределение ваших настроек в web.xml. Это не должно, но, знаете...
Проверьте, работает ли изменение. Если нет, вы можете настроить таймаут программно для своего теста:
HttpSession.setMaxInactiveInterval(int seconds)
Таким образом вы можете заставить таймаут в определенном сеансе.
Ответ 2
К сожалению, в JBoss EAP 6.1.0.Alpha1 (AS 7.2.0.Alpha1-redhat-4) мы вернулись к необходимости устанавливать его для каждого веб-приложения в web.xml: См. Документы JBoss.
Скажем, используйте это:
<session-config>
<session-timeout>30</session-timeout>
</session-config>