在JBOSS EAP 6(AS 7)中:
我正在调用Spring的WebServiceTemplate.marshalSendAndRecieve 这反过来又找不到rt.jar中存在的类
Caused by: java.lang.ClassNotFoundException: com.sun.org.apache.xerces.internal.dom.DocumentImpl
我不明白这是怎么发生的?当然,rt.jar中的所有内容都会在启动时加载?
有什么想法吗?
谢谢,
肯尼
答案 0 :(得分:14)
好的,我找到了一个解决方案(不确定它是否正确,但是有效)。
我通过运行java -verbose:class注意到只加载了rt.jar中的一些类而不是我需要的类(com.sun.org.apache.xerces.internal.dom.DocumentImpl)
所以在JBoss EAP 6(As 7)中有一个模块目录($ JBOSS_HOME / modules /) 在这下面有sun / jdk / main / modules.xml
我添加了以下条目:
<path name="com/sun/org/apache/xerces/internal/dom"/>
<path name="com/sun/org/apache/xerces/internal/xni"/>
<path name="com/sun/org/apache/xerces/internal/jaxp"/>
(最后2由于在dom中添加后续类未找到异常)
正如我所说,我不能100%确定这是否是正确的方法。 欢迎任何意见!
谢谢,
肯尼