您的位置:首页 > 其它

[置顶]解决session过期跳转到登陆页面并跳出iframe框架

2011-11-20 22:29 761 查看
分类: 开发技术2011-08-18
14:17 27人阅读 评论(0) 收藏 举报

/**

* 访问控制过滤器

*/

package com.lz.filter;

import java.io.IOException;

import javax.servlet.Filter;

import javax.servlet.FilterChain;

import javax.servlet.FilterConfig;

import javax.servlet.ServletException;

import javax.servlet.ServletRequest;

import javax.servlet.ServletResponse;

import javax.servlet.http.HttpServletRequest;

import javax.servlet.http.HttpServletResponse;

import com.lz.pojo.Userinfo;

import com.lz.util.DefaultElements;

/**

* @author zxj

* @version 9:47:52 AM Jan 11, 2011

*/

public class AccessFilter implements Filter {

public static String loginurl;

public static String errorurl;

/* (non-Javadoc)

* @see javax.servlet.Filter#destroy()

*/

public void destroy() {

// TODO Auto-generated method stub

}

public void doFilter(ServletRequest arg0, ServletResponse arg1,

FilterChain arg2) throws IOException, ServletException {

// TODO Auto-generated method stub

HttpServletRequest request = (HttpServletRequest) arg0;

HttpServletResponse response = (HttpServletResponse) arg1;

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

if (user == null) {

response.sendRedirect(DefaultElements.LOGINURL);

return;

}

arg2.doFilter(request, response);

}

public void init(FilterConfig arg0) throws ServletException {

}

}

但是这样不能不能跳出iframe等框架。

可以用javaScript解决

在你想控制跳转的页面,比如login.jsp中的<head>与</head>之间加入以下代码:

<script language="JavaScript">

if (window != top)

top.location.href = location.href;

</script>
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: