Выход из системы с использованием JSP и недействительный сеанс не работают с использованием аутентификации на основе контейнера Tomcat
Я добился аутентификации на основе контейнеров, используя Tomcat 8.5 и Spring. Однако сейчас я пытаюсь выйти из системы с помощью простой кнопки на странице JSP, которая не работает. Любая помощь приветствуется: Вот шаги, которые я делаю: 1) Поместил кнопку на странице JSP под названием выход из системы. 2) При нажатии кнопки выхода из системы вызывается logout.do (это метод в UserController). 3) Вызов методов Controller делает сессию недействительной и возвращает пользователя в logout.jsp. 4)Logout.jsp перенаправляет пользователя на index.jsp
Первоначально, когда я запускаю домашнюю страницу, меня просят ввести имя пользователя и пароль, диалоговое окно, данное самим контейнером Tomcat. После входа в систему, когда я нажимаю кнопку "Выйти" в jsp, запускается UserController, и сеанс также становится недействительным, однако, когда я пытаюсь снова открыть index.page в браузере, я могу войти напрямую, не вызывая запрашивается диалоговое окно входа в систему, предоставленное Tomcat.
То же самое работает нормально, когда я пытаюсь добиться использования входа в систему на основе FORM, но не работает, когда я пытаюсь добиться использования входа в систему на основе DIGEST. Любая помощь будет оценена. Вот мои фрагменты кода:
UserController.java
@RequestMapping(value = "/logout.do",method = RequestMethod.GET)
public ModelAndView logout(HttpServletRequest request)
{
ModelAndView mav;
HttpSession session = request.getSession();
if (session != null){
session.invalidate();
}
mav = new ModelAndView("logout.jsp");
return mav;
}
logout.jsp
<%
response.sendRedirect("index.jsp");
%>
Есть ли что-то особенное для аутентификации на основе контейнеров, которое мне не хватает??