2013-06-23 42 views
4

我想在我的项目中使用一些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.jarjsf-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.xmlhttps://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 

谢谢!

回答

0

您的罐子在建造路线? 在eclipse中检查,右键单击当前项目并转到properties-> java build path-> libraries。

0

大概在java build path-> order和export选项卡上移动你的库。 关于maven项目的例子,你需要移动maven依赖关系或向下移动JSF librairies

+0

另一种解决方案是在用户库上注册JSF 2.2库(windows-> preferences-> java-> build path-> user libraries - >添加,并添加新的JSF功能到您的项目(在项目属性 - >项目facets-> java服务器面下选择Java服务器面版本) – jperf