有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java两个web服务SOAP不适用于wildfly 9.0.2

因此,我有一个SOAP应用程序可以与Wildfly配合使用,另一个早期的SOAP应用程序是在ApacheCXF上构建的,在tomcat上运行,但我必须让它与Wildfly配合使用,所以我添加了一个Jboss部署结构,如下所示

<?xml version='1.0' encoding='UTF-8'?> <jboss-deployment-structure xmlns="urn:jboss:deployment-structure:1.2">   <deployment>
 <exclude-subsystems>
    <subsystem name="webservices" />
</exclude-subsystems>    </deployment>   </jboss-deployment-structure>

在这之后,两个web服务开始在同一个wildfly上工作,但我注意到,如果部署,它们可以工作,但当服务器重新启动时,Jboss正常工作的服务给出了以下错误,其中Apache Cxf正常工作

2017-12-21 04:20:09,856 ERROR [io.undertow.request] (default task-1) UT005023: Exception handling request to /booking/ReservationService: java.lang.LinkageError: Failed to link com/sun/xml/messaging/saaj/soap/SOAPDocumentImpl (Module "deployment.CreateWS.war:main" from Service Module Loader)
    at org.jboss.modules.ModuleClassLoader.defineClass(ModuleClassLoader.java:437)
    at org.jboss.modules.ModuleClassLoader.loadClassLocal(ModuleClassLoader.java:269)
Caused by: java.lang.NoClassDefFoundError: com/sun/org/apache/xerces/internal/dom/DocumentImpl
    at java.lang.ClassLoader.defineClass1(Native Method)
    at java.lang.ClassLoader.defineClass(ClassLoader.java:760)
    at org.jboss.modules.ModuleClassLoader.doDefineOrLoadClass(ModuleClassLoader.java:353)
    at org.jboss.modules.ModuleClassLoader.defineClass(ModuleClassLoader.java:432)
    ... 62 more
Caused by: java.lang.ClassNotFoundException: com.sun.org.apache.xerces.internal.dom.DocumentImpl from [Module "deployment.CreateWS.war:main" from Service Module Loader]
    at org.jboss.modules.ModuleClassLoader.findClass(ModuleClassLoader.java:205)
    at org.jboss.modules.ConcurrentClassLoader.performLoadClassUnchecked(ConcurrentClassLoader.java:455)
    at org.jboss.modules.ConcurrentClassLoader.performLoadClassChecked(ConcurrentClassLoader.java:404)
    at org.jboss.modules.ConcurrentClassLoader.performLoadClass(ConcurrentClassLoader.java:385)
    at org.jboss.modules.ConcurrentClassLoader.loadClass(ConcurrentClassLoader.java:130)
    ... 66 more

其中booking是使用jboss的WS,CreateWS是ApacheCXFOne


共 (1) 个答案

  1. # 1 楼答案

    我通过添加清单解决了这个问题。META-INF文件夹中的mf文件,依赖于停止工作的Web服务,因此每当服务器重新启动时,首先加载并部署旧的WS