我的web.xml不加过滤器,启动正常,一旦加上就报错。我的web.xml配置日下 
<filter> 
<filter-name>struts2 </filter-name> 
<filter-class> 
org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter 
</filter-class> 
</filter> <filter-mapping> 
<filter-name>struts2 </filter-name> 
<url-pattern>/* </url-pattern> 
</filter-mapping 
启动报错现象: 
  严重: Exception starting filter struts2 
java.lang.RuntimeException: java.lang.RuntimeException: java.lang.RuntimeException: java.lang.reflect.InvocationTargetException 
at com.opensymphony.xwork2.inject.ContainerBuilder$4.create(ContainerBuilder.java:132) 
at com.opensymphony.xwork2.inject.Scope$2$1.create(Scope.java:51) 
at com.opensymphony.xwork2.inject.ContainerImpl.getInstance(ContainerImpl.java:507) 
at com.opensymphony.xwork2.inject.ContainerImpl.getInstance(ContainerImpl.java:517) 
at com.opensymphony.xwork2.inject.ContainerImpl$9.call(ContainerImpl.java:548) 
at com.opensymphony.xwork2.inject.ContainerImpl.callInContext(ContainerImpl.java:574) 
at com.opensymphony.xwork2.inject.ContainerImpl.getInstance(ContainerImpl.java:546) 
at com.opensymphony.xwork2.config.impl.DefaultConfiguration.reloadContainer(DefaultConfiguration.java:182) 
at com.opensymphony.xwork2.config.ConfigurationManager.getConfiguration(ConfigurationManager.java:55) 
at org.apache.struts2.dispatcher.Dispatcher.init_PreloadConfiguration(Dispatcher.java:360) 
at org.apache.struts2.dispatcher.Dispatcher.init(Dispatcher.java:403) 
at org.apache.struts2.dispatcher.ng.InitOperations.initDispatcher(InitOperations.java:69) 
at org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter.init(StrutsPrepareAndExecuteFilter.java:48) 
at org.apache.catalina.core.ApplicationFilterConfig.getFilter(ApplicationFilterConfig.java:275) 
at org.apache.catalina.core.ApplicationFilterConfig.setFilterDef(ApplicationFilterConfig.java:397) 
at org.apache.catalina.core.ApplicationFilterConfig. <init>(ApplicationFilterConfig.java:108) 
at org.apache.catalina.core.StandardContext.filterStart(StandardContext.java:3709) 
at org.apache.catalina.core.StandardContext.start(StandardContext.java:4363) 
at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1045) 
at org.apache.catalina.core.StandardHost.start(StandardHost.java:719) 
at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1045) 
at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:443) 
at org.apache.catalina.core.StandardService.start(StandardService.java:516) 
at org.apache.catalina.core.StandardServer.start(StandardServer.java:710) 
at org.apache.catalina.startup.Catalina.start(Catalina.java:578) 
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) 
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) 
at java.lang.reflect.Method.invoke(Method.java:597) 
at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:288) 
at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413) 
Caused by: java.lang.RuntimeException: java.lang.RuntimeException: java.lang.reflect.InvocationTargetException 
at com.opensymphony.xwork2.inject.ContainerImpl.inject(ContainerImpl.java:495) 
at com.opensymphony.xwork2.inject.ContainerImpl$7.call(ContainerImpl.java:532) 
at com.opensymphony.xwork2.inject.ContainerImpl.callInContext(ContainerImpl.java:581) 
at com.opensymphony.xwork2.inject.ContainerImpl.inject(ContainerImpl.java:530) 
at com.opensymphony.xwork2.config.impl.LocatableFactory.create(LocatableFactory.java:32) 
at com.opensymphony.xwork2.inject.ContainerBuilder$4.create(ContainerBuilder.java:130) 
... 30 more 
Caused by: java.lang.RuntimeException: java.lang.reflect.InvocationTargetException 
at com.opensymphony.xwork2.inject.ContainerImpl$ConstructorInjector.construct(ContainerImpl.java:440) 
at com.opensymphony.xwork2.inject.ContainerImpl.inject(ContainerImpl.java:492) 
... 35 more 
Caused by: java.lang.reflect.InvocationTargetException 
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) 
at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39) 
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27) 
at java.lang.reflect.Constructor.newInstance(Constructor.java:513) 
at com.opensymphony.xwork2.inject.ContainerImpl$ConstructorInjector.construct(ContainerImpl.java:419) 
... 36 more 
Caused by: java.lang.NoClassDefFoundError: org/springframework/web/context/WebApplicationContext 
at org.apache.struts2.spring.StrutsSpringObjectFactory. <init>(StrutsSpringObjectFactory.java:76) 
... 41 more 
Caused by: java.lang.ClassNotFoundException: org.springframework.web.context.WebApplicationContext 
at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1387) 
at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1233) 
at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:320) 
... 42 more 
2009-9-11 9:41:07 org.apache.catalina.core.StandardContext start 
严重: Error filterStart 
2009-9-11 9:41:07 org.apache.catalina.core.StandardContext start 
严重: Context [/strutssping] startup failed due to previous errors 同时弹出一个窗口,class file editor 
  the source attachment does not contain the source for the file LogFactory classm,change attached source . 但是这个commons-logging-1.0.4.jar包我已经导入了啊,怎么还要寻找啊 

解决方案 »

  1.   

    找不到这个类:org/springframework/web/context/WebApplicationContext
      

  2.   

    strut2-all*** 里面的包全部要导入。
      

  3.   

    1.不要所有的struts2的包都导入
    2.导入spring的jar包试试
      

  4.   

    可以自己写一个filter的类吧 一定要用struts自带的过滤器吗
     <filter>
       <filter-name>MyFilter</filter-name>
       <filter-class>com.filter.MyFilter</filter-class>
     
      </init-param>