[英]session Logout problem in jsf
我正在开发一个Web应用程序,并使用jsf,hibernate和spring框架。
应用程序中存在不同类型的用户。根据用户输入的类型,我为不同的用户类型启用了菜单中的链接。
用户登录后,菜单栏中的注销链接就会提供给用户。我已经编写了logout.jsp页面。
<%session.invalidate(); response.sendRedirect是(response.encodeRedirectURL( “../登录/ login.jsf”)); %>
即使注销后用户仍可以查看应显示给特定类型用户的页面。
请帮忙。
该页面显然是从浏览器缓存中请求的。
通过添加javax.servlet.Filter
禁用它,该javax.servlet.Filter
映射到覆盖诸如*.jsf
类的动态页面的url-pattern
,并在doFilter()
方法中doFilter()
以下操作。
HttpServletResponse httpResponse = (HttpServletResponse) response;
httpResponse.setHeader("Cache-Control", "no-cache, no-store, must-revalidate"); // HTTP 1.1.
httpResponse.setHeader("Pragma", "no-cache"); // HTTP 1.0.
httpResponse.setDateHeader("Expires", 0); // Proxies.
chain.doFilter(request, response);
通话后
session.invalidate();
加
request.logout();.
方法注销将null设置为在请求上调用getUserPrincipal,getRemoteUser和getAuthType时返回的值。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.