Soap Apache CXF的WSDL文件,带有;任何xml";身体

Soap Apache CXF的WSDL文件,带有;任何xml";身体,soap,wsdl,cxf,Soap,Wsdl,Cxf,背景:我正在开发通过WS-Management协议进行通信的web服务。此处的原始WSDL如下所示: <xs:complexType name="SampleResourceType"> <xs:sequence> <xs:element name="PropertyA" type="xs:string"/> <xs:element name="PropertyB" type="xs:int"/> </xs:seq

背景:我正在开发通过WS-Management协议进行通信的web服务。此处的原始WSDL如下所示:

<xs:complexType name="SampleResourceType">
  <xs:sequence>
     <xs:element name="PropertyA" type="xs:string"/>
     <xs:element name="PropertyB" type="xs:int"/>
  </xs:sequence>
</xs:complexType>
<xs:element name="SampleResource" type="tns:SampleResourceType"/>

<wsdl:message name="PutMessage">
  <wsdl:part name="Body" element="tns:SampleResource"/>
</wsdl:message>
<soap:Body>
  <Body>
    <XXX>
      <DeviceID>XXX:YYY</DeviceID>
    </XXX>
  </Body>
</soap:Body>
输出如下所示:

<soap:Body>
  <ns8:CIMObject>
    <XXX>
      <DeviceID>XXX:YYY</DeviceID>
    </XXX>
  </ns8:CIMObject>
</soap:Body>

XXX:YYY
如果我使用:

  <xs:complexType name="CIMObjectType">
    <xs:sequence>
      <xs:any namespace="##other" minOccurs="0" processContents="lax"/> 
    </xs:sequence>
  </xs:complexType>
  <xs:element name="CIMObject" type="tns:CIMObjectType"/>

  <wsdl:message name="GetResponseMessage">
     <wsdl:part name="Body" type="tns:CIMObjectType"/>
  </wsdl:message>

输出如下所示:

<xs:complexType name="SampleResourceType">
  <xs:sequence>
     <xs:element name="PropertyA" type="xs:string"/>
     <xs:element name="PropertyB" type="xs:int"/>
  </xs:sequence>
</xs:complexType>
<xs:element name="SampleResource" type="tns:SampleResourceType"/>

<wsdl:message name="PutMessage">
  <wsdl:part name="Body" element="tns:SampleResource"/>
</wsdl:message>
<soap:Body>
  <Body>
    <XXX>
      <DeviceID>XXX:YYY</DeviceID>
    </XXX>
  </Body>
</soap:Body>

XXX:YYY
但我需要:

<soap:Body>
    <XXX>
      <DeviceID>XXX:YYY</DeviceID>
    </XXX>
</soap:Body>

XXX:YYY
所以,问题是:如何修改WSDL以获得所需的输出?非常感谢您的帮助