过滤器没看出问题来,倒是很有可能因为你把过滤器的报名写错了,或者放的位置错误。
导致整个web-app启动失败,整个web-app都完蛋了,当然404咯看看日志吧。可以参考我们教程中的例子:

http://www.family168.com/tutorial/jsp/html/jsp-ch-07.html#jsp-ch-07-01

解决方案 »

  1.   

    我看错了,还是你写错了,两个<web-app>?<?xml version="1.0" encoding="UTF-8"?>  
    <web-app  xmlns="http://java.sun.com/xml/ns/j2ee"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"version="2.4" xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd"> 
        <web-app>、、、、、、、、、、、、 
        <filter> 
        <filter-name>CharFiler </filter-name> 
        
             <filter-class>net.com.servlet.filter.CharFiler </filter-class> 
        
        </filter> 
        
        <filter-mapping> 
        <filter-name>CharFiler </filter-name> 
        <url-pattern>/* </url-pattern> 
        </filter-mapping> 
          
        
          <web-app> 、、、、、、、、、、、、
       <servlet> 
         <servlet-name>action </servlet-name> 
         <servlet-class>org.apache.struts.action.ActionServlet </servlet-class> 
         <init-param> 
           <param-name>config </param-name> 
           <param-value>/WEB-INF/struts-config.xml </param-value> 
         </init-param> 
         <init-param> 
           <param-name>debug </param-name> 
           <param-value>3 </param-value> 
         </init-param> 
         <init-param> 
           <param-name>detail </param-name> 
           <param-value>3 </param-value> 
         </init-param> 
         <load-on-startup>0 </load-on-startup> 
       </servlet> 
       <servlet-mapping> 
         <servlet-name>action </servlet-name> 
         <url-pattern>*.do </url-pattern> 
       </servlet-mapping> 
    </web-app> 
      

  2.   

    哦。原来是把web.xml写错了,我又不仔细了。眼神不好咯。
      

  3.   

    答:web.xml配置文件不对。<web-app>标签怎么会这样嵌套的?