找不到rt.jar的类

时间:2013-03-28 14:51:47

标签: jboss7.x java classnotfoundexception

在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中的所有内容都会在启动时加载?

有什么想法吗?

谢谢,

肯尼

1 个答案:

答案 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%确定这是否是正确的方法。 欢迎任何意见!

谢谢,

肯尼