Я рефакторинг приложения, которое выполняло собственное управление таймаутом сеанса. Я отметил, что HttpSession поддерживает установку значения тайм-аута.Сделать javax.servlet.http.HttpSession не время ожидания на определенных страницах
Существует прослушиватель событий (HttpSessionListener, который я предполагаю), который перенаправляется на страницу «тайм-аут». «Мы сожалеем, что ваша сессия истекла, это ссылка на страницу входа в систему».
Проблема в том, что когда я впервые попал в приложение и сижу на странице входа в систему, событие таймаута сеанса все еще срабатывает. Поэтому я могу посмотреть страницу входа и перенаправить на страницу тайм-аута.
Что я хочу, так это то, что если я нахожусь на странице входа и только на странице входа в систему, то тайм-аут сеанса не возникает. Как мне это сделать?
Я уже пробовал звонить HttpSession.setMaxInactiveInterval(-1)
в разрешении по умолчанию в ActionBean для входа в систему, но это не сработало.
Я считаю, что сеанс создается, но не обязательно проходит проверку подлинности, всякий раз, когда к любой странице обращаются.
Я не думаю, что это слушатель. Возможно, фильтр + слушатель. Не могли бы вы показать код? – Bozho
Не легко. Это не приложение с открытым исходным кодом (пока). Что я должен искать для идентификации задействованных фильтров или слушателей? Найти работы на HttpSession? – Freiheit
Создается ли сеанс, когда кто-то попадает на страницу входа? – Jeremy