如何配置JBOSS以在Web应用程序中使用xml lib?

时间:2009-02-04 22:59:23

标签: java jboss

JBOSS扔了一个:

java.lang.NoSuchMethodError: org.w3c.dom.Document.getDocumentURI()Ljava/lang/String;

加载wsdl时出错。我可以将它配置为更喜欢我的WAR中的库而不是系统或应用程序服务器库吗?

1 个答案:

答案 0 :(得分:1)

应用服务器应该已经使用WEB-INF/lib中的任何JAR以及系统和应用服务器库路径 - 标准方法是{{1}的ClassLoader将类加载委托给app服务器lib,它将类加载委托给服务器lib,并且只有当父类加载器找不到类时才会尝试加载它自己的类。

换句话说,如果将同一个类放在WEB-INF/lib和app服务器的lib中,则始终会使用后一个JAR。这意味着可以通过在WEB-INF/lib和应用服务器的lib中使用具有相同名称但不同版本的类来创建冲突 - 您确定这不是导致问题的原因吗?你能解决这个冲突吗?

一些应用服务器(不确定JBoss,但我知道WebSphere允许它)允许您配置类加载器,以便首先检查子加载器(子优先与父优先),但这种类型的配置可能导致其他的问题。