我想在我的项目中使用一些HTML5标记,因此我想将我的JSF版本更新为支持HTML5标记的2.2版本。目前我正在使用JSF库Eclipse downloads itself和Eclipse版本:Juno Service Release 2.在Eclipse Juno中将JSF 2.0更新为JSF 2.2
我读了很多关于如何执行更新的不同说明,如this之一。
的步骤我经历了: 我下载了jsf-impl-2.2.0-m05.jar
和jsf-api-2.2.0-m05.jar
,并将其移动到我的项目WEB-INF/lib
。然后我去了Properties/Project Facets/Java Server Faces,点击User Libraries,然后我添加了一个名为“JSF 2.2”的“New”,我添加了两个我早些时候下载到lib
的jar文件。有一次,我添加了这些,我回用户库屏幕,但因为它告诉我,我不能在“应用”点击:
Required class javax.faces.FactoryFinder does not exist in selected libraries.
我使用这个faces-config.xml
:https://stackoverflow.com/a/16131589/989919
不知怎的,我搞砸了,现在我只是看到:
HTTP Status 404
description The requested resource is not available.
如果我尝试访问我的index.xhtml。
当我使用下载的2.0版本Eclipse时,Eclipse控制台中有错误消息。
Jun 23, 2013 9:52:54 PM org.apache.catalina.core.StandardEngine startInternal
INFO: Starting Servlet Engine: Apache Tomcat/7.0.39
Jun 23, 2013 9:52:54 PM org.apache.catalina.core.StandardContext listenerStart
SEVERE: Error configuring application listener of class org.apache.myfaces.webapp.StartupServletContextListener
java.lang.ClassNotFoundException: org.apache.myfaces.webapp.StartupServletContextListener
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.StandardContext.listenerStart(StandardContext.java:4823)
at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5381)
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1559)
at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1549)
at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
at java.util.concurrent.FutureTask.run(FutureTask.java:138)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:895)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:918)
at java.lang.Thread.run(Thread.java:680)
Jun 23, 2013 9:52:54 PM org.apache.catalina.core.StandardContext listenerStart
SEVERE: Skipped installing application listeners due to previous error(s)
Jun 23, 2013 9:52:54 PM org.apache.catalina.core.StandardContext startInternal
SEVERE: Error listenerStart
和
Jun 23, 2013 9:52:55 PM org.apache.myfaces.config.FacesConfigurator startLib
INFO: Starting up MyFaces-package : myfaces-api in version : 2.0.2 from path : file:/Users/mediocre/Documents/Developement/Eclipse/.metadata/.plugins/org.eclipse.wst.server.core/tmp0/wtpwebapps/WebEng_07/WEB-INF/lib/myfaces-api-2.0.2.jar
Jun 23, 2013 9:52:55 PM org.apache.myfaces.config.FacesConfigurator startLib
INFO: Starting up MyFaces-package : myfaces-impl in version : 2.0.2 from path : file:/Users/mediocre/Documents/Developement/Eclipse/.metadata/.plugins/org.eclipse.wst.server.core/tmp0/wtpwebapps/WebEng_07/WEB-INF/lib/myfaces-impl-2.0.2.jar
Jun 23, 2013 9:52:55 PM org.apache.myfaces.config.FacesConfigurator startLib
INFO: MyFaces-package : tomahawk not found.
Jun 23, 2013 9:52:55 PM org.apache.myfaces.config.FacesConfigurator startLib
INFO: MyFaces-package : tomahawk12 not found.
Jun 23, 2013 9:52:55 PM org.apache.myfaces.config.FacesConfigurator startLib
谢谢!
另一种解决方案是在用户库上注册JSF 2.2库(windows-> preferences-> java-> build path-> user libraries - >添加,并添加新的JSF功能到您的项目(在项目属性 - >项目facets-> java服务器面下选择Java服务器面版本) – jperf