<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>
我是这么配置的 启动tomcat报错2012-4-26 20:54:29 org.apache.catalina.core.AprLifecycleListener init
信息: The APR based Apache Tomcat Native library which allows optimal performance in production environments was not found on the java.library.path: C:\Common\binary\com.sun.java.jdk.win32.x86_1.6.0.013\bin;D:\apache-tomcat-6.0.30\bin
2012-4-26 20:54:29 org.apache.coyote.http11.Http11Protocol init
信息: Initializing Coyote HTTP/1.1 on http-8080
2012-4-26 20:54:29 org.apache.catalina.startup.Catalina load
信息: Initialization processed in 645 ms
2012-4-26 20:54:29 org.apache.catalina.core.StandardService start
信息: Starting service Catalina
2012-4-26 20:54:29 org.apache.catalina.core.StandardEngine start
信息: Starting Servlet Engine: Apache Tomcat/6.0.30
2012-4-26 20:54:29 org.apache.catalina.startup.HostConfig deployDescriptor
信息: Deploying configuration descriptor host-manager.xml
2012-4-26 20:54:30 org.apache.catalina.startup.HostConfig deployDescriptor
信息: Deploying configuration descriptor manager.xml
2012-4-26 20:54:30 org.apache.catalina.startup.HostConfig deployDirectory
信息: Deploying web application directory docs
2012-4-26 20:54:30 org.apache.catalina.startup.HostConfig deployDirectory
信息: Deploying web application directory examples
2012-4-26 20:54:30 org.apache.catalina.core.ApplicationContext log
信息: ContextListener: contextInitialized()
2012-4-26 20:54:30 org.apache.catalina.core.ApplicationContext log
信息: SessionListener: contextInitialized()
2012-4-26 20:54:30 org.apache.catalina.startup.HostConfig deployDirectory
信息: Deploying web application directory ROOT
2012-4-26 20:54:30 org.apache.catalina.startup.HostConfig deployDirectory
信息: Deploying web application directory struts2
2012-4-26 20:54:31 com.opensymphony.xwork2.util.logging.commons.CommonsLogger info
信息: Parsing configuration file [struts-default.xml]
2012-4-26 20:54:31 com.opensymphony.xwork2.util.logging.commons.CommonsLogger info
信息: Unable to locate configuration files of the name struts-plugin.xml, skipping
2012-4-26 20:54:31 com.opensymphony.xwork2.util.logging.commons.CommonsLogger info
信息: Parsing configuration file [struts-plugin.xml]
2012-4-26 20:54:31 com.opensymphony.xwork2.util.logging.commons.CommonsLogger info
信息: Parsing configuration file [struts.xml]
2012-4-26 20:54:31 com.opensymphony.xwork2.util.logging.commons.CommonsLogger info
信息: Overriding property struts.i18n.reload - old value: false new value: true
2012-4-26 20:54:31 com.opensymphony.xwork2.util.logging.commons.CommonsLogger info
信息: Overriding property struts.configuration.xml.reload - old value: false new value: true
2012-4-26 20:54:32 org.apache.catalina.startup.HostConfig deployDirectory
信息: Deploying web application directory TestStruts2
2012-4-26 20:54:32 com.opensymphony.xwork2.util.logging.commons.CommonsLogger info
信息: Parsing configuration file [struts-default.xml]
2012-4-26 20:54:32 org.apache.catalina.core.StandardContext filterStart
严重: Exception starting filter struts2
java.lang.NoClassDefFoundError: org/apache/commons/lang/StringUtils
at com.opensymphony.xwork2.config.providers.XmlConfigurationProvider.register(XmlConfigurationProvider.java:201)
at org.apache.struts2.config.StrutsXmlConfigurationProvider.register(StrutsXmlConfigurationProvider.java:102)
at com.opensymphony.xwork2.config.impl.DefaultConfiguration.reloadContainer(DefaultConfiguration.java:180)
at com.opensymphony.xwork2.config.ConfigurationManager.getConfiguration(ConfigurationManager.java:66)
at org.apache.struts2.dispatcher.Dispatcher.init_PreloadConfiguration(Dispatcher.java:390)
at org.apache.struts2.dispatcher.Dispatcher.init(Dispatcher.java:436)
at org.apache.struts2.dispatcher.ng.InitOperations.initDispatcher(InitOperations.java:69)
at org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter.init(StrutsPrepareAndExecuteFilter.java:51)
at org.apache.catalina.core.ApplicationFilterConfig.getFilter(ApplicationFilterConfig.java:295)
at org.apache.catalina.core.ApplicationFilterConfig.setFilterDef(ApplicationFilterConfig.java:422)
at org.apache.catalina.core.ApplicationFilterConfig.<init>(ApplicationFilterConfig.java:115)
at org.apache.catalina.core.StandardContext.filterStart(StandardContext.java:4038)
at org.apache.catalina.core.StandardContext.start(StandardContext.java:4692)
at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:799)
at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:779)
at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:546)
at org.apache.catalina.startup.HostConfig.deployDirectory(HostConfig.java:1041)
at org.apache.catalina.startup.HostConfig.deployDirectories(HostConfig.java:964)
at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:502)
at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1277)
at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:321)
at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:142)
at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1061)
at org.apache.catalina.core.StandardHost.start(StandardHost.java:785)
at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1053)
at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:463)
at org.apache.catalina.core.StandardService.start(StandardService.java:525)
at org.apache.catalina.core.StandardServer.start(StandardServer.java:701)
at org.apache.catalina.startup.Catalina.start(Catalina.java:585)
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:289)
at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:414)
Caused by: java.lang.ClassNotFoundException: org.apache.commons.lang.StringUtils
at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1647)
at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1493)
at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:320)
... 35 more
2012-4-26 20:54:32 org.apache.catalina.core.StandardContext start
严重: Error filterStart
2012-4-26 20:54:32 org.apache.catalina.core.StandardContext start
严重: Context [/TestStruts2] startup failed due to previous errors
2012-4-26 20:54:33 org.apache.coyote.http11.Http11Protocol start
信息: Starting Coyote HTTP/1.1 on http-8080
2012-4-26 20:54:33 org.apache.jk.common.ChannelSocket init
信息: JK: ajp13 listening on /0.0.0.0:8009
2012-4-26 20:54:33 org.apache.jk.server.JkMain start
信息: Jk running ID=0 time=0/35  config=null
2012-4-26 20:54:33 org.apache.catalina.startup.Catalina start
信息: Server startup in 3301 ms请大家帮忙看下 是什么原因,个人感觉是
<filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class>的问题,但是不知道应该怎么配置这个地方。

解决方案 »

  1.   

    这个具体的我也忘了,不过struts2.2以后的配置都是上面的配置org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter
    是不是与别的jar不兼容啊
      

  2.   

    我在Apache 官网下的  在里面选出了这几个java
    commons-fileupload-1.2.2.jar
    commons-io-2.0.1.jar
    commons-logging-1.1.1.jar
    freeer-2.3.18.jar
    ognl-3.0.4.jar
    struts2-core-2.3.1.2.jar
    xwork-core-2.3.1.2.jar不知道是不是不兼容啊,大家都用哪些jar包呢?
      

  3.   

    刚刚看了一下,struts2.3以后的配置都是这个,应该是少导入jar了
      

  4.   

    java.lang.NoClassDefFoundError: org/apache/commons/lang/StringUtils,根据提示,你尝试将commons-lang.jar包导入进去看看。
      

  5.   

    少了一个jar包,在struts2.3.1.2 中应该多加一个 commons-lang-2.5.jar包,而在 struts2.2 则不用加该包参考:http://blog.csdn.net/hzc543806053/article/details/7475160