我写了一个web应用。流程如下:
1.login.jsp 登录组件。成功登录后转到init.jsp。
2.init.jsp 在session中置入两个对象。转发请求(用RequestDispatcher)到下一个frame页面。
3.frame.htm 这个是应用的界面,并有一个退出按钮。
4.点击frame中的退出按钮,链接到logout.jsp。
5.在logout.jsp中 session.invalidate() 然后 request.sendRedirect("login.jsp")
回到login.jsp重新登录。
但是再登录后执行上述步骤,我发现并没有执行步骤2中的init.jsp。也就是没有在session中置入两个对象。
经过试验我发现两种解决办法,
A.把frame.htm改为frame.jsp。仅仅是改了文件类型。其他都不变。
B.把init.jsp 加上禁止缓存的代码。
以上两种方法用任何一种,退出后再重新登录(并没有关IE)都没任何问题。seesion中也有那两个对象。
请问这是为什么??????尤其是解决方法A,实在是不明白。
贴过一次不知道为什么被删了。