对于frame页面框架的java web项目,如果session过期执行跳转操作时,只在一个frame中(例如center frame)跳转到设置的login页面了,为了能直接跳转到最初的登录页面,就需要在跳转的页面中(login.jsp)添加如下代码:

<script type="text/javascript">
if (top.location != location){
 top.location.href = location.href;
 }
</script>

 

这段代码的含义就是:如果login.jsp不是框架的最外层页面,则改变框架结构,使login.jsp变为框架最外层,这样就实现了跳出frame框架的效果了。

 

以下是java 过滤器的跳转代码

 public class LoginInterceptor implements HandlerInterceptor {

 @Override  public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object obj) throws Exception {

  User user = (User) request.getSession().getAttribute("user");  

 if (user != null) {  

  return true;  

 } else {   

 ServletContext context = request.getSession().getServletContext();   

 response.sendRedirect(context.getContextPath() + "/loginController/login");

   return false;    

  }  

}

相关文章:

  • 2022-12-23
  • 2021-12-27
  • 2022-12-23
  • 2021-12-19
  • 2021-09-09
  • 2021-06-20
猜你喜欢
  • 2022-12-23
  • 2022-12-23
  • 2022-02-07
  • 2021-06-20
  • 2021-12-11
  • 2021-12-05
  • 2021-08-27
相关资源
相似解决方案