jboss-deployment-structure.xml 不会加载到 Wildfly 10.x

jboss-deployment-structure.xml does not load to Wildfly 10.x

我将 Wildfly 10 与 Java 8 一起使用。下面是 WEB-INF/jboss-deployment-structure.xml,我还尝试将 jboss-deployment-structure.xml 在 META-INF 下。 我想使用 JBoss AS 作为没有 WS 功能的 servlet 容器,所以我尝试关闭 webservices 子系统。

<?xml version="1.0" encoding="UTF-8"?>
<jboss-deployment-structure xmlns="urn:jboss:deployment-structure:1.2" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
    <sub-deployment name="my.war">
        <exclude-subsystems>
            <subsystem name="webservices" />
        </exclude-subsystems>
    </sub-deployment>
</jboss-deployment-structure> 

但我仍然收到以下错误。我认为 xml 没有加载。

Caused by: org.jboss.as.server.deployment.DeploymentUnitProcessingException: WFLYWS0059: Apache CXF library (cxf-2.6.2.jar) detected in ws endpoint deployment; either provide a proper deployment replacing embedded libraries with container module dependencies or disable the webservices subsystem for the current deployment adding a proper jboss-deployment-structure.xml descriptor to it. The former approach is recommended, as the latter approach causes most of the webservices Java EE and any JBossWS specific functionality to be disabled.

您部署的是 ear(包含 "my.war")还是独立的 war? 因为您使用的是 <sub-deployment> 而不是 <deployment>...

我会这样做(这里仅限于 REST Web 服务)

    <jboss-deployment-structure xmlns="urn:jboss:deployment-structure:1.2">
      <deployment>
        <exclude-subsystems>
            <subsystem name="jaxrs" />
        </exclude-subsystems>
        ...

尝试一下:

<jboss-deployment-structure xmlns="urn:jboss:deployment-structure:1.2">
  <deployment>
    <exclude-subsystems>
      <subsystem name="webservices"/>
      <subsystem name="jaxrs"/>
    </exclude-subsystems>
    <exclusions>
      <module name="javax.ws.rs.api"/>
      <module name="org.apache.cxf"/>
      <module name="org.apache.cxf.impl"/>      
    </exclusions>
  </deployment>
</jboss-deployment-structure>

PS: 正确位置在WEB-INF下