java.lang.ClassNotFoundException: org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter in web.xml
Dies ist mein web.xml Code,Während der Laufzeit erhalte ich eine Fehlermeldung wie diese..Wie Sie dieses Problem lösen?
"SEVERE: Exception starting filter Struts
java.lang.ClassNotFoundException: org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter"
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="http://java.sun.com/xml/ns/javaee"
xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
id="WebApp_ID" version="2.5">
<display-name>HelloStruts</display-name>
<filter>
<filter-name>Struts</filter-name>
<filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>Struts</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
<welcome-file-list>
<welcome-file>index.jsp</welcome-file>
</welcome-file-list>
</web-app>
Der Klassenpfad benötigt Struts 2-Kern-Pakete.
Welche version des S2?
Welche version des S2?
InformationsquelleAutor kavie | 2015-01-27
Du musst angemeldet sein, um einen Kommentar abzugeben.
wenn Sie mit struts2 version 2.5, die Sie ändern müssen, aus org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter zu org.apache.struts2.dispatcher.filter.StrutsPrepareAndExecuteFilter
Version 2.5 Notizen
InformationsquelleAutor Alexandr Lihonosov
Ich Stand vor dem gleichen problem. Jeder war darauf hindeutet, dass meine jar-version falsch war aber die problem war anders.
Ich das hinzufügen der erforderlichen jar-in-Projekt, aber das funktionierte nicht.
So entfernt das Glas vom Projekt und fügte hinzu, diejenigen, die jar in mein TOMCAT server-lib-Ordner und das hat geklappt.
InformationsquelleAutor Gaurav vijayvargiya
Dies wird auftreten, weil Sie die richtige version der
struts2-core.jar
ist nicht auf den lib-Pfad. Bitte überprüfen Sie Ihre lib Verzeichnis und stellen sicher, dass Sie die richtige version vonstruts2-core.jar
.Wenn Sie das Glas in Ihrer lib Ordner, dann werden Sie brauchen, um sicherzustellen, dass Sie auch das richtige Projekt in der Bibliothek, wenn Sie bereitstellen Ihren code zu Ihrer Anwendung container. Wenn die Struts-2-Projekt-Bibliothek-Dateien sind nicht enthalten, wenn Sie bereitstellen, wird dieser Fehler auch auftreten.
InformationsquelleAutor meoww-
Stellen Sie sicher, dass Ihre struts2 Bibliothek in Ihr Projekt bereitstellen. Fügen Sie Ihre struts2-Bibliothek unter WEB-INF-Datei. Dann fügen Sie, dass Ihre build-Pfad.
InformationsquelleAutor richard gong
Beginnend mit Struts 2.5 die StrutsPrepareAndExecuteFilter wurde verschoben, um die org.apache.struts2.dispatcher.filter Paket (ohne "ng" in das Paket).
InformationsquelleAutor Joe Aldrich
Eine andere Lösung, wenn der rest der Antworten nicht für Sie arbeiten
Wenn man die richtigen package-Pfad (ohne .ng..) und erhalten Sie noch:
Ich hatte das gleiche problem, aber keine dieser Lösungen funktioniert, denn ich habe den gleichen Fehler mit den rechten Pfad, aber der Grund war wie der class-loader laden der Klassen.
Die Lösung wird in der "Klassen geladen, die mit local class loader first (parent last)"
Dazu:
Wenn dies für Sie arbeiten, dann ist der beste Weg, dies zu tun ist eine Einstellung deployment.xml in das EAR-Projekt, so dass in Zukunft die Bereitstellung dieser ist gesetzt automatisiert:
Ich fand die Lösung hier:
Lösung - class-loader-Konfiguration in WAR
InformationsquelleAutor Kail Alexander
die Lösung ist in pom.xml;
ich kann sehen, diese, in diesem video; https://www.youtube.com/watch?v=q4IhM4GBhF8
InformationsquelleAutor david