关于在java过滤器中进行页面重定向的问题

系统采用Struts架构,想在java过滤器中判断session是否失效,失效即跳转到登录页面,不好使啊!代码如下:publicvoiddoFilter(ServletR... 系统采用Struts架构,想在java过滤器中判断session是否失效,失效即跳转到登录页面,不好使啊!

代码如下:
public void doFilter(ServletRequest request, ServletResponse response,
FilterChain chain) throws IOException, ServletException {
String indexPage = config.getInitParameter("indexPage");
// 设置request编码用的字符集
request.setCharacterEncoding("utf-8"); // ①
HttpServletRequest requ = (HttpServletRequest) request;
HttpSession session = requ.getSession(true);
System.out.println("进入Session过滤器");
// 获取客户请求的页面
String requestPath = requ.getServletPath();
System.out.println("S请求动作:" + requestPath);
if (!requestPath.endsWith("/login_noauth1.do")) {
String userid = String.valueOf(session.getAttribute("username"));
if (userid.equals("null")) {
((HttpServletResponse) response).sendRedirect(indexPage);
return;
} else {
chain.doFilter(request, response);
}
} else {
chain.doFilter(request, response);
}
}
展开
 我来答
puziguo
2014-09-25 · TA获得超过1928个赞
知道小有建树答主
回答量:884
采纳率:86%
帮助的人:813万
展开全部
if (userid.equals("null")) {

你确定不是这样写:

if (userid==null) {
更多追问追答
追问
不是,用sysout已经能进到里面了。
追答
恩,那你说说如何不好使?404么
帐号已注销
2018-04-21
知道答主
回答量:2
采纳率:0%
帮助的人:1576
展开全部
过滤器里,使用重定向或者请求转发时,在后面加return,就不会报错重定向或者请求转发过多!一定要注意
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式