0

我在 WebSphere 7 中遇到了一个特殊问题。我们的 Spring WS 应用程序在 /WEB-INF/lib 下有几个 Jars,它没有明确的类路径。该应用程序部署在 2 个集群服务器中。EAR 仅包含一个 Module 而没有其他 Jar。它在其中一台服务器上工作,但在另一台服务器上失败。我们收到以下错误: 原因:java.lang.NoSuchMethodError: org/w3c/dom/Node.getLocalName()Ljava/lang/String;

正如在 WebSphere Classpath Viewer 中看到的,两个服务器的运行时 Classpath 是不同的。我怀疑这是错误的原因。我还确保两台服务器上的类加载相同并设置为 PARENT_LAST/Application

如何确保两台服务器上的 Classpath 相同?

4

2 回答 2

0

打开 Dmgr 管理控制台并转到此处:

企业应用程序 > APP_NAME > 管理模块 > MODULE_NAME > 查看类加载器(选择服务器)

然后查看两台服务器,看看是否有任何不同

于 2012-08-27T10:19:58.823 回答
0

问题已解决。引起:java.lang.NoSuchMethodError: org/w3c/dom/Node.getLocalName()Ljava/lang/String; 是由于“xml4j.jar”包含一个没有 getLocalName() 方法的 Node 类版本引起的。Node 类和 getLocalName() 方法也是“dom.jar”的一部分。在其中一台无法正常工作的服务器中,可能正在加载错误版本的 Node 类。删除“xml4j.jar”后,它在所有环境中都有效

谢谢!

于 2012-08-31T18:53:53.443 回答