Mar 03, 2013 12:09:05 PM org.apache.catalina.core.ApplicationContext log
INFO: Marking servlet Faces Servlet as unavailable
Mar 03, 2013 12:09:05 PM org.apache.catalina.core.StandardContext loadOnStartup
SEVERE: Servlet /mavenproject1 threw load() exception
java.lang.ClassNotFoundException: javax.faces.webapp.FacesServlet
at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1713)
at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1558)
at org.apache.catalina.core.DefaultInstanceManager.loadClass(DefaultInstanceManager.java:527)
at org.apache.catalina.core.DefaultInstanceManager.loadClassMaybePrivileged(DefaultInstanceManager.java:509)
at org.apache.catalina.core.DefaultInstanceManager.newInstance(DefaultInstanceManager.java:137)
at org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:1144)
at org.apache.catalina.core.StandardWrapper.load(StandardWrapper.java:1088)
at org.apache.catalina.core.StandardContext.loadOnStartup(StandardContext.java:5033)
at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5317)
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:901)
at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:877)
at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:633)
at org.apache.catalina.startup.HostConfig.deployDescriptor(HostConfig.java:657)
at org.apache.catalina.startup.HostConfig$DeployDescriptor.run(HostConfig.java:1637)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471)
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:1110)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603)
at java.lang.Thread.run(Thread.java:722)
當我試圖用Faces Servlet部署一個應用程序時,我得到了這個堆棧跟蹤。 這意味着沒有FacesServlet可用,但顯然不是這種情況,因爲這些庫在WAR中可用。Tomcat 7.0.37 JSF應用程序部署ClassNotFound FacesServlet
- JSF-API-2.2.0-m09.jar
- JSF-IMPL-2.2.0-m09.jar
- 的JavaEE的Web-API-6.0.jar
我對於可能出錯的事情沒有任何線索。正如標題所述,我使用的是Tomcat 7.0.37。
例外不說謊。這些庫在WAR的'/ WEB-INF/lib'中肯定不存在。我看到你在使用Maven。提取並探索Maven製作的WAR,你會看到。相應地重新提出問題;這不是一個JSF問題,而是一個Maven問題。 – BalusC 2013-03-03 11:59:54
如問題中所述,JAR的列表是WAR內的一個('PROJECT/target/PROJECT.war/WEB-INF/lib /')。這就是發佈這件事的確切原因,你說得對,雖然例外不是謊言。 – Aquillo 2013-03-03 12:32:27
我已經嘗試過使用另一個項目,但Tomcat仍然從上面(從第一個項目)拋出錯誤。即使這個應用程序不再部署? – Aquillo 2013-03-03 14:23:11