在SSH jdk6.0 Tomcat6.0环境中使用CXF 运行时报如下错误

JAXB 2.0 API is being loaded from the bootstrap classloader

在SSH jdk6.0 Tomcat6.0环境中使用CXF 运行时报如下错误

Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'org.apache.cxf.wsdl.WSDLManager' defined in URL [jar:file:/E:/workSpace/T82A/WebRoot/WEB-INF/lib/cxf/cxf-2.1.3.jar!/META-INF/cxf/cxf.fixml]: Instantiation of bean failed; nested exception is org.springframework.beans.BeanInstantiationException: Could not instantiate bean class [org.apache.cxf.wsdl11.WSDLManagerImpl]: Constructor threw exception; nested exception is java.lang.LinkageError: JAXB 2.0 API is being loaded from the bootstrap classloader, but this RI (from jar:file:/E:/workSpace/T82A/WebRoot/WEB-INF/lib/cxf/jaxb-impl-2.1.7.jar!/com/sun/xml/bind/v2/model/impl/ModelBuilder.class) needs 2.1 API. Use the endorsed directory mechanism to place jaxb-api.jar in the bootstrap classloader. (See http://java.sun.com/j2se/1.5.0/docs/guide/standards/)

...
Caused by: java.lang.LinkageError: JAXB 2.0 API is being loaded from the bootstrap classloader, but this RI (from jar:file:/E:/workSpace/T82A/WebRoot/WEB-INF/lib/cxf/jaxb-impl-2.1.7.jar!/com/sun/xml/bind/v2/model/impl/ModelBuilder.class) needs 2.1 API. Use the endorsed directory mechanism to place jaxb-api.jar in the bootstrap classloader. (See http://java.sun.com/j2se/1.5.0/docs/guide/standards/)
...

 

这些说法都是错误的:

 

按照网上看说,在jdk1.6.0_05\jre\lib\下新建endorsed文件夹,放入jaxb-api.jar还是没有效果,

经过我的仔细阅读E文,纠正这个错误,

如果是Tomcat 5.5,则新建文件路径为“Tomcat 5.5\common\endorsed”,如果是Tomcat 6.0,则新建路径为“Tomcat 6.0\endorsed”。

 

正确的是:

需要到Eclipse的Tomcat运行参数哪儿看看endorsed指向哪儿,从而在Tomcat相关目录上创建这个目录即可。

其实这样不是很清晰,endorsed是JVM的参数,是可以设置的,eclipse配置的tomcat可能没有.

其实如果没有这个参数要在eclipse的 Servers tomcat6配置 下的JDK

Optional Java VM arguments:

-Djava.endorsed.dirs=D:"/tomcat server/tomcat6/common/endorsed"

-Djava.endorsed.dirs的值是可变的只要指定就可以,但如果不在eclipse内的话要在tomcat6下进行配置这个参数,这个我还没配置.可以自己找找看.

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值