У меня есть веб-приложение, развернутое с Tomcat (8.0.32), и операции входа в систему / выхода из системы работают нормально при каждом повторном развертывании. Однако они не работают так хорошо, если я остановлю Catalina без повторного развертывания веб-приложения (./catalina.sh stop
, а затем ./catalina.sh start
без каких-либо изменений в содержимом папки веб-приложения). Происходит следующее: метод org.apache.shiro.subject.Subject.isAuthenticated()
возвращает true
сразу после запуска сервера , но перед началом новой операции входа в систему .
Более конкретно, моя реализация javax.servlet.Filter.doFilter
начинается со следующей строки:
if(org.apache.shiro.SecurityUtils.getSubject().isAuthenticated()) ...
, который возвращает истину сразу после перезапуска сервера, но перед новым входом в систему. Версия Широ 1.3.0.
Поэтому мне было интересно, если я что-то упустил, например, Есть ли какие-либо операции, которые должны быть выполнены раньше, или это неправильный способ использовать этот метод? Спасибо за внимание.