Konnte nicht initialisiert werden FacesServlet in Tomcat 7 - ClassNotFoundException
Ich versuche eine einfache hello world app in JSF basiert aber auf die Ausnahme, die ausgelöst durch tomcat auf der Startseite sehe ich, dass FacesServlet
ist nicht immer initialisiert. Ich habe die erforderlichen jar
Dateien myfaces-api, bundle, impl
- und commons-beanutils, codec-Sammlungen, faulgas, Protokollierung. Abgesehen davon lese ich in einer anderen Frage, ALSO, ich würde auch erforderlich jsf-api.jar and jsf-impl.jar
die ich auch in WEB-INF/lib
und Hinzugefügt build path
Immer noch kein Glück. Ich entwickle unter Ubuntu mit Eclipse und Tomcat 7
Hier ist mein web.xml
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" id="WebApp_ID" version="3.0">
<display-name>Doom</display-name>
<display-name>JavaServerFaces</display-name>
<!-- Change to "Production" when you are ready to deploy -->
<context-param>
<param-name>javax.faces.PROJECT_STAGE</param-name>
<param-value>Development</param-value>
</context-param>
<!-- Welcome page -->
<welcome-file-list>
<welcome-file>faces/welcome.xhtml</welcome-file>
</welcome-file-list>
<!-- JSF mapping -->
<servlet>
<servlet-name>Faces Servlet</servlet-name>
<servlet-class>javax.faces.webapp.FacesServlet</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>
<!-- Map these files with JSF -->
<servlet-mapping>
<servlet-name>Faces Servlet</servlet-name>
<url-pattern>/faces/*</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>Faces Servlet</servlet-name>
<url-pattern>*.jsf</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>Faces Servlet</servlet-name>
<url-pattern>*.faces</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>Faces Servlet</servlet-name>
<url-pattern>*.xhtml</url-pattern>
</servlet-mapping>
</web-app>
Dies ist die Ausnahme
java.lang.ClassNotFoundException: javax.faces.webapp.FacesServlet
at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1676)
at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1521)
at org.apache.catalina.core.DefaultInstanceManager.loadClass(DefaultInstanceManager.java:415)
at org.apache.catalina.core.DefaultInstanceManager.loadClassMaybePrivileged(DefaultInstanceManager.java:397)
at org.apache.catalina.core.DefaultInstanceManager.newInstance(DefaultInstanceManager.java:118)
at org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:1062)
at org.apache.catalina.core.StandardWrapper.load(StandardWrapper.java:1010)
at org.apache.catalina.core.StandardContext.loadOnStartup(StandardContext.java:4935)
at org.apache.catalina.core.StandardContext$3.call(StandardContext.java:5262)
at org.apache.catalina.core.StandardContext$3.call(StandardContext.java:5257)
at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:334)
at java.util.concurrent.FutureTask.run(FutureTask.java:166)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
at java.lang.Thread.run(Thread.java:724)
Hinzufügen der
Bitte beachten Sie, dass die akzeptierte Antwort ist eine falsche Art der Installation JSF auf Tomcat. Für die richtige Art finden Sie in unserem JSF-wiki Seite: stackoverflow.com/tags/jsf/info
javax.faces-2.2.0.jar
(von repo1.maven.org/maven2/org/glassfish/javax.faces/2.2.0) in WEB-INF/lib das problem bei mir gelöst.Bitte beachten Sie, dass die akzeptierte Antwort ist eine falsche Art der Installation JSF auf Tomcat. Für die richtige Art finden Sie in unserem JSF-wiki Seite: stackoverflow.com/tags/jsf/info
InformationsquelleAutor DevZer0 | 2013-08-03
Du musst angemeldet sein, um einen Kommentar abzugeben.
Nach 2 Wochen habe ich die Antwort gefunden. sehr einfach, wie immer am Ende. Sie müssen kopieren Sie beide
Tomcat
lib
. nachdem es in derproject
lib scheint nicht zu funktionieren./WEB-INF/lib
. Dass das Teil nicht funktioniert, ist ein problem, das Sie noch lösen müssen.vielen Dank für die schlechten Nachrichten, aber das funktioniert für mich, die ich wirklich wollte, zu lernen, einige jsf 🙂
Ich hoffe, dass Sie im Hinterkopf behalten, dass Sie sollten nicht dieses problem anzugehen, und alle seine Folgen in der Zukunft zu JSF, aber um die schlechte Umwelt. Sie sollten eine gute Entwicklung-und Laufzeitumgebung, um mit zu beginnen.
zwei Woche ... OMG ... der Reine Mann 🙁
InformationsquelleAutor DevZer0
Ich hatte das gleiche problem, mit Eclipse Juno und Tomcat 7 - Tomee 1.6.0.
Möchte ich mojarra 2.0.3 und ich habe viele Probleme in der server-Bereitstellung. Ich habe es gelöst löschen myfaces-*.jar im Tomcat lib; dann hinzufügen mojarra lib im Tomcat-Verzeichnis, und starten Sie dann server. Jetzt alle, es ist OK, es läuft.
Nach vielen Konfigurationen änderungen, die ich gesehen habe, dass das, was wirklich funktioniert, es ist die Bibliothek installiert, die im Tomcat-Verzeichnis, direkt ignorieren der Eclipse-Konfigurationen. vielleicht ein bug?
Schließlich habe ich mein problem gelöst manuellen ändern der Tomcat-Bibliothek auf meinem eigenen. Ich glaube nicht, dass es ein problem sein wird in der Zukunft mehr.
InformationsquelleAutor musef
Diese Abhängigkeit enthalten, die benötigten Bibliotheken und kann Ihr problem lösen
InformationsquelleAutor TarikW