[ 
https://issues.apache.org/jira/browse/CXF-766?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12510621
 ] 

maomaode commented on CXF-766:
------------------------------

Ok, after deep investigate the issue, i found that there's nothing related to 
the namespace, the method name in the CodeGenTest is really misleading. it 
*MUST* changed to the FromAnotherMessagePart not FromAnotherNamespace.

As per the spec, if the header from another message part, then it's optional to 
generate a parameter. As you can see be default cxf wsdl2java generate the same 
method signature as the JAXWS RI, i.e we don't generate the extra parameter for 
the soap:header from another message part.

However in cxf wsdl2java we have a flag to generate the optional parameter

THAT is : -exsh true 

> if input message part defined in soapheader, the operation miss this input 
> args
> -------------------------------------------------------------------------------
>
>                 Key: CXF-766
>                 URL: https://issues.apache.org/jira/browse/CXF-766
>             Project: CXF
>          Issue Type: Bug
>            Reporter: Freeman Fang
>         Attachments: io.wsdl, Soap11MtomUtf8.wsdl
>
>
> the operation defined in wsdl is 
> <wsdl:operation name="EchoBinaryHeaderAsString">
>             <soap:operation 
> soapAction="http://xmlsoap.org/Ping/IMtomTest/EchoBinaryHeaderAsString";
>                 style="document" />
>             <wsdl:input name="InputMessageContract">
>                 <soap:header message="i0:InputMessageContract_Headers" 
> part="ByteArray" use="literal" />
>                 <soap:body use="literal" />
>             </wsdl:input>
>             <wsdl:output name="OutputMessageContract">
>                 <soap:body use="literal" />
>             </wsdl:output>
>         </wsdl:operation>
> but the operation in generated code is 
> @SOAPBinding(parameterStyle = SOAPBinding.ParameterStyle.BARE)
>     @WebResult(targetNamespace = "http://xmlsoap.org/Ping";, partName = 
> "StringValue", name = "StringValue")
>     @WebMethod(operationName = "EchoBinaryHeaderAsString")
>     public java.lang.String echoBinaryHeaderAsString();
> It miss the input arg
> attachment is the wsdl

-- 
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