2011-03-08 106 views
0

当我打开我的登录页面,我已经连接了我的电子邮件和密码,当我连接到网页时,我要登录页面它的gud到这里,当我按下浏览器中的按钮时,我要去再次到主页面。java/jsf重定向页面

我通过使用session.invalidate()删除了会话,但是iam无法重新登录页面。

+0

你刷新页面后也看到主页面?你使用什么样的身份验证:基于容器还是基于应用程序? – 2011-03-08 10:14:00

+0

是的,即使当我刷新页面,我要去我的主页。 – 2011-03-08 10:34:34

+0

我正在使用基于应用程序的认证 – 2011-03-08 10:34:58

回答

1

这是因为你的页面被缓存了。

创建过滤器,将设置以下标题为响应

HttpServletResponse hsr = (HttpServletResponse) response; 
hsr.setHeader("Cache-Control", "no-cache, no-store, must-revalidate"); // HTTP 1.1. 
hsr.setHeader("Pragma", "no-cache"); // HTTP 1.0. 
hsr.setDateHeader("Expires", 0); // Proxies. 
chain.doFilter(request, response); 
0

后退按钮汇集了来自浏览器缓存中的HTML页面。你无法控制它。但请确保您的身份验证管理不允许使用需要经过身份验证的用户的功能。

但是,您可以设置“no-cache”为标题。但是,我强烈阻止它。看看如何:

response.setHeader("Cache-Control","no-cache");