目前,我在注销页面上使会话无效,并清除了主菜单中的缓存。但是当我单击"后退"按钮时,它会显示HTTP状态500 - 内部服务器错误。
由于会话无效而不是此错误,如何继续显示登录页面?
Mainmene.jsp
<%
response.setHeader("Cache-Control","no-cache");
response.setHeader("Cache-Control","no-store");
response.setHeader("Pragma","no-cache");
response.setDateHeader ("Expires", 0);
if(session.getAttribute("email")==null) {
response.sendRedirect("loginpage.jsp"); // GO TO LOGIN PAGE
}
%>
Logout.java
protected void doPost(HttpServletRequest request, HttpServletResponse
response)
throws ServletException, IOException {
response.setContentType("text/html");
HttpSession session=request.getSession();
session.invalidate();
response.sendRedirect("loginpage.jsp");
}
您可以使用一个Filter
来检查sessionScope中是否存在用户对象,并将其应用于给定类型的url-patterns
。您可以在此处查看如何使用。