首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > JAVA > Java Web开发 >

使用过滤器访问页面出现404异常

2013-06-25 
使用过滤器访问页面出现404错误过滤器只过滤page文件夹下的jsp,一旦没有登陆而访问则跳转回index.jsp 当我

使用过滤器访问页面出现404错误
使用过滤器访问页面出现404异常
过滤器只过滤page文件夹下的jsp,一旦没有登陆而访问则跳转回index.jsp

 当我在浏览器输入http://localhost:8080/weibodemo/page/homepage.jsp的时候
页面出现的是
HTTP Status 404 - /weibodemo/page/index.jsp

Filter代码
public void doFilter(ServletRequest request,ServletResponse response,FilterChain chain)throws IOException,ServletException{
HttpServletRequest req=(HttpServletRequest) request;
HttpSession ses=req.getSession();
if(ses.getAttribute("uesrid")!=null){
chain.doFilter(request, response);
}else{
request.getRequestDispatcher("index.jsp").forward(request,response);}
}


xml配置

  <filter>
    <filter-name>LoginFilter</filter-name>
    <filter-class>weibodemo.filter</filter-class>
   
  </filter>
  <filter-mapping>
  <filter-name>LoginFilter</filter-name>
  <url-pattern>/page/*</url-pattern>
  </filter-mapping>


[解决办法]
request.getRequestDispatcher("../index.jsp").forward(request,response);
或者
request.getRequestDispatcher(request.getContextPath() + "index.jsp").forward(request,response);
还有我觉得这里用重定向是不是好点?

热点排行