![](/img/trans.png)
[英]Migrating web application from JBoss 7.1.1 + Java 6 to Wildfly 9.0.2 + Java 8
[英]two web services SOAP not working with wildfly 9.0.2
因此,我有一个可以与Wildfly一起正常工作的SOAP应用程序,而另一个较早的应用程序是基于apache cxf构建的,并且正在tomcat上运行,但是我不得不使其与Wildfly一起工作,因此我添加了如下的Jboss-deployment-structure。
<?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
其中预订是与jboss一起使用的WS,而CreateWS是apache cxf之一。
我通过在META-INF文件夹中添加了manifest.mf文件来解决此问题,该文件具有适当的功能至停止工作的Web服务,因此,每当服务器重新启动时,首先加载并部署旧WS。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.