2011-11-14 35 views
1

我试图建立在Eclipse(靛蓝SR1)的Web项目MacOSX上与在Tomcat中抛出: 的Tomcat 7.0.22 JSF 2.0异常在Eclipse动态Web使用JSF项目时

这是一个动态Web项目,我通过项目属性添加了JSF项目构面。

当加入JSF项目构面,我得到使用选其一:钻嘴鱼科2.0.3或Apache MyFaces的2.0.2

如果让我选择钻嘴鱼科,并尝试启动Tomcat(从Eclipse)我得到的以下情况除外:

java.lang.LinkageError: loader constraint violation: when resolving interface method "javax.servlet.jsp.JspApplicationContext.getExpressionFactory() 

如果让我选择的MyFaces我得到以下异常:

java.lang.IllegalStateException: Application was not properly initialized at startup, could not find Factory: javax.faces.application.ApplicationFactory 

基于其他答案在这里我没有罐子:■添加到WEB-INF/lib文件夹而在项目的构建路径包括通过Eclipse中只有库本身添加:

  • 的Apache Tomcat V7.0
  • 的EclipseLink 2.3.0
  • JSF 2.0(Apache的MyFaces的JSF睿2.0 API 2.0.2 )
  • MySQL JDBC驱动程序

项目本身是最小的,包含两个XHTML的文件,但还没有豆。

任何想法?

回答

0

If I choose Mojarra and try to start the Tomcat (from within Eclipse) I get the following exception:

java.lang.LinkageError: loader constraint violation: when resolving interface method "javax.servlet.jsp.JspApplicationContext.getExpressionFactory()

此异常表明,你已经在web应用程序的运行时类路径不同servletcontainer化妆/版本,它与目标运行时本身的JSP API冲突的JSP API/IMPL JAR文件。


If I choose MyFaces I get the following exception:

java.lang.IllegalStateException: Application was not properly initialized at startup, could not find Factory: javax.faces.application.ApplicationFactory

此异常表明您已经的不同JSF化妆/版本JSF IMPL JAR文件的Web应用程序的运行时类路径的其他地方与实际装载的JSF IMPL冲突。


这两个例外都归结为webapp的运行时类路径很脏。除了/WEB-INF/lib文件夹 - 看起来像是空的,正如你所说 - webapp的运行时类路径覆盖了Tomcat/lib,JRE/libJRE/lib/ext。你应该确保你有而不是你自己添加了任何JAR。删除它们,如果有的话。如有必要,删除/卸载/重新安装Tomcat和/或JRE安全地进行安装。然后你应该去掉他们的库,除非你真的明白你在做什么。

我认为您从Glassfish服务器的javaee.jar您的webapp的运行时类路径中的某个地方。这至少可以解释两个例外,因为它包括标准的JSP API和Mojarra API。

+0

仍然没有成功。我有一个干净的Tomcat安装,我从来没有篡改过JRE/lib或JRE/lib/ext。当Eclipse构建并发布项目时,它将以下内容放入wtpwebapps/JSFTest/WEB-INF/lib /:com.sun.tools.xjc_2.2.0.jar中 com.sun.xml.bind_2.2.0.v201004141950.jar eclipselink的.jar EL-RI-1.0.jar javax.activation_1.1.0.jar javax.mail_1.4.0.jar javax.persistence_2.0.3.jar javax.xml.bind_2.2.0.v201005080402.jar javax.xml .stream_1.0.1.v201004272200.jar JSF的API-2.1.0-b03.jar JSF的api.jar文件 JSF的参数impl-2.1.0-b03.jar JSF-impl.jar中 JSP-API-2.1 .jar jstl-1.2.jar servlet-api-2.5.jar – user874490

相关问题