Exception starting filter struts2 - habe versucht, hinzufügen JAR, aber gleiche Ergebnis

Hier ist die Fehlermeldung die ich erhalte:

SEVERE: Exception starting filter struts2
java.lang.NoClassDefFoundError: com/opensymphony/xwork2/config/FileManagerProvider
    at org.apache.struts2.dispatcher.Dispatcher.init_FileManager(Dispatcher.java:336)
    at org.apache.struts2.dispatcher.Dispatcher.init(Dispatcher.java:465)
    at org.apache.struts2.dispatcher.FilterDispatcher.init(FilterDispatcher.java:193)
    at org.apache.catalina.core.ApplicationFilterConfig.getFilter(ApplicationFilterConfig.java:295)
    at org.apache.catalina.core.ApplicationFilterConfig.setFilterDef(ApplicationFilterConfig.java:424)
    at org.apache.catalina.core.ApplicationFilterConfig.<init>(ApplicationFilterConfig.java:115)
    at org.apache.catalina.core.StandardContext.filterStart(StandardContext.java:4072)
    at org.apache.catalina.core.StandardContext.start(StandardContext.java:4726)
    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:601)
    at org.apache.catalina.startup.HostConfig.deployDescriptor(HostConfig.java:675)
    at org.apache.catalina.startup.HostConfig.deployDescriptors(HostConfig.java:601)
    at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:502)
    at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1317)
    at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:324)
    at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:142)
    at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1065)
    at org.apache.catalina.core.StandardHost.start(StandardHost.java:840)
    at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1057)
    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:754)
    at org.apache.catalina.startup.Catalina.start(Catalina.java:595)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
    at java.lang.reflect.Method.invoke(Unknown Source)
    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: com.opensymphony.xwork2.config.FileManagerProvider
    at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1680)
    at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1526)
    ... 30 more

Liste der Gläser:

antlr-2.7.6.jar
commons-beanutils-1.8.3.jar
commons-collections-3.2.1.jar
commons-digester-2.1.jar
commons-fileupload-1.3.jar
commons-logging-1.1.1.jar
dom4j-1.6.1.jar
ejb3-persistence-1.0.2.GA.jar
freemarker-2.3.16.jar
hibernate-annotations-3.2.1.ga.jar
hibernate-commons-annotations-3.3.0.ga.jar
hibernate-core-4.2.1.Final.jar
hsqldb-2.0.0.jar
javassist-3.12.1.GA.jar
jta-1.1.jar
log4j-1.2.15.jar
mysql-connector-java-5.1.21.jar
ognl-2.7.3.jar
slf4j-api-1.6.1.jar
slf4j-log4j12-1.7.5.jar
struts2-core-2.3.14.3.jar
xwork-2.1.3.jar

Und meine web.xml ist wie diese:

<filter>
    <filter-name>struts2</filter-name>
    <filter-class>org.apache.struts2.dispatcher.FilterDispatcher</filter-class>
</filter>
<filter-mapping>
    <filter-name>struts2</filter-name>
    <url-pattern>/*</url-pattern>
</filter-mapping>

Ich habe versucht, viele Dinge, die nach der Lektüre in diesem forum:

  1. Versucht, verschiedene Versionen von JAR.
  2. Manuell implementierten war-in Tomcat.
  3. Platziert die servlet-api-JAR in den lib-Ordner ( obwohl es anwesend ist, ist der server lib).
  4. Lesen Sie die Tomcat-Protokolle, fand nichts anderes. ( Bitte lassen Sie mich wissen, ich kann fügen Sie diese ebenfalls)

Aber keiner von Ihnen geholfen haben. So, der Letzte Ausweg, ich bin Entsendung es hier.

Verwenden Sie die gleiche version von xwork-core jar als struts2-core jar.
Yep. Sie können nicht willkürlich mix-and-match-Bibliothek-Versionen-das ist, warum verwenden wir Werkzeuge wie Maven. Ich verstehe nicht, warum Sie würde nach dem Zufallsprinzip hinzufügen eines servlet-api-jar, um Ihre web-app: außer, dass Sie muss, die nicht Ihre eigenen, was in der Fehlermeldung würde führen Sie zu glauben, etwas anderes als entweder (a) der referenzierten Klasse fehlt, oder (b) eine Abhängigkeit fehlt?
Danke Aleksandr M. und ich auch die Streben und xwork und es funktioniert jetzt.
Dave Newton - ich weiß, beliebig mischen-match ist nicht der Weg. Aber nach dem Versuch eine Menge, nichts funktionierte, also habe ich versucht es so zu. Soweit servlet-api, ich wusste, dass nach dem Lesen in einem der Beiträge. Danke

InformationsquelleAutor tempusfugit | 2013-06-13

Schreibe einen Kommentar