If wrapped style is used and multiple message parts are generated (because, for 
example, a soap header parameter is declared), the generated wsdl does not 
interop with RI or CXF client.
-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

                 Key: CXF-2097
                 URL: https://issues.apache.org/jira/browse/CXF-2097
             Project: CXF
          Issue Type: Bug
          Components: JAX-WS Runtime
    Affects Versions: 2.1.4
            Reporter: Gyorgy Orban


It happens because CXF by default uses the "parameters" name for both the input 
and output message parts. The following web method demonstrates the issue:

    @WebMethod(operationName = "Hello")
    @SOAPBinding(parameterStyle = SOAPBinding.ParameterStyle.WRAPPED)
    public void hello(
            @WebParam(targetNamespace = "myns", name = "Message") String 
message,
            @WebParam(header = true, name = "myOutHeader", targetNamespace = 
"myns", mode = Mode.OUT) Holder<String> header1) {
    }

which produces:

<wsdl:message name="Hello">
<wsdl:part element="tns:Hello" name="parameters">
    </wsdl:part>
</wsdl:message>
−
<wsdl:message name="HelloResponse">
<wsdl:part element="tns:HelloResponse" name="parameters">
    </wsdl:part>
<wsdl:part element="tns:myOutHeader" name="myOutHeader">
    </wsdl:part>
</wsdl:message>

The reference implementation produces the following:

<message name="Hello">
<part name="parameters" element="tns:Hello"/>
</message>

<message name="HelloResponse">
<part name="result" element="tns:HelloResponse"/>
<part name="myOutHeader" element="tns:myOutHeader"/>
</message>

Please see the patch attached that fixes this problem in 2.1.4 and makes CXF 
generate the same as RI.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to