我在WebSphere 7中面临一个特殊的问题。我们的Spring WS应用程序在/ WEB-INF / lib下有几个Jars,它没有明确的Classpath。该应用程序部署在2个群集服务器中。 EAR只包含一个模块而没有其他Jars。 它在一台服务器上工作,但在其他服务器上失败。我们收到以下错误: 引起:java.lang.NoSuchMethodError:org / w3c / dom / Node.getLocalName()Ljava / lang / String;
两个服务器的运行时类路径是不同的,如WebSphere Classpath Viewer中所示。我怀疑这是导致错误的原因。 我还确保两个服务器上的类加载相同并设置为PARENT_LAST / Application
如何确保两台服务器上的Classpath相同?
答案 0 :(得分:0)
打开Dmgr管理控制台并转到此处:
企业应用程序> APP_NAME>管理模块> MODULE_NAME>查看类加载器(选择服务器)
然后查看两台服务器,看看是否有什么不同
答案 1 :(得分:0)
问题已解决。 引起:java.lang.NoSuchMethodError:org / w3c / dom / Node.getLocalName()Ljava / lang / String; 是由于" xml4j.jar"其中包含没有getLocalName()方法的Node类版本。 Node类和getLocalName()方法也是" dom.jar"的一部分。 在其中一个没有工作的服务器可能正在加载不正确版本的Node类。 删除" xml4j.jar"
后,它在所有环境中都有效谢谢!