我在工程里加了一个过滤器之后就无法访问系统了,老是报请求无效,找不到地址,404的错误,
type Status reportmessage /portalWeb/guangdong_new.jspdescription The requested resource (/portalWeb/guangdong_new.jsp) is not available.去掉过滤器一切正常,这是怎么回事呀?下面是过滤器的代码:public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException,
ServletException {
// TODO Auto-generated method stub
HttpServletRequest httpRequest = (HttpServletRequest)request;
HttpServletResponse httpResponse = (HttpServletResponse)response;
HttpSession session=httpRequest.getSession();
String user = (String)session.getAttribute("loginphonenumber");
if("".equals(user) || null == user){
String loginUrl = filterConfig.getInitParameter("loginUrl");
String eccoding = filterConfig.getInitParameter("eccoding");
//httpResponse.sendRedirect(loginUrl);
//return;
httpResponse.setCharacterEncoding(eccoding);
PrintWriter out = response.getWriter();
out.println("<script language=\"javascript\">");
out.println("if(confirm('对不起,您还没有登录,点击\"确定\"进行登录!'))");
out.println("{window.location.href='" + loginUrl + "';");
out.println("}else{");
out.println("window.history.back(-1);");
out.println("}");
out.println("</script>");
out.flush();
out.close();
return;
}else{
chain.doFilter(httpRequest, httpResponse);
}

}
.web.xml:<filter>
<filter-name>LoginFilter</filter-name>
<filter-class>com.huawei.dcs.loginfilter.LoginFilter</filter-class>
<init-param>
<param-name>loginUrl</param-name>
<param-value>要跳转的地址</param-value>
</init-param>
<init-param>
<param-name>eccoding</param-name>
<param-value>GBK</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>LoginFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
大家帮我看看,谢谢!

解决方案 »

  1.   

    主页面被过滤掉了
    filter写法有问题
    类似如下改一下:String uri = request.getRequestURI();
    if (uri.endsWith("/portalWeb/guangdong_new.jsp") {
        chain.doFilter(request, response);
        return;
    }
      

  2.   

     <filter-mapping>
            <filter-name>LoginFilter</filter-name>
            <url-pattern>/*</url-pattern>
        </filter-mapping>
    这不是过滤所有的请求吗
      

  3.   

    我改了,还是不行,我的系统干脆就访问不了,报404错误:HTTP Status 404 - /portalWeb/guangdong.jsp--------------------------------------------------------------------------------type Status reportmessage /portalWeb/guangdong.jspdescription The requested resource (/portalWeb/guangdong.jsp) is not available.