[ 
https://issues.apache.org/jira/browse/TUSCANY-3824?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Greg Dritschler updated TUSCANY-3824:
-------------------------------------

    Attachment: TUSCANY-3824.patch

I have attached a patch for this issue.

Interface2WSDLGenerator was already defaulting the global element name to the 
operation name for doc/lit/bare, but only if the @WebParam annotation was 
present.  I corrected the code to perform the correct defaulting even when the 
@WebParam annotation is not used.

I did not change the part name.  I could not find anything in the JAX-WS spec 
that requires a particular part name for doc/lit/bare.

I removed the non-standard defaulting of the SOAP action in both 
Interface2WSDLGenerator and WSDLDefinitionGenerator.

I ran into one issue in the tests.  In 
itest/ws/holder-ws-service-multiple-outputs, Axis2 couldn't figure out how to 
dispatch OrderServiceBare.bareReviewOrderOutHolder() since it has an empty SOAP 
body (no input arguments).  It turns out there is a fix for this in the Axis2 
trunk.
http://svn.apache.org/viewvc?view=revision&revision=1004667
The fix is not in Axis2 1.5.3.  I decided to work around this by adding a SOAP 
action to the bareReviewOrderOutHolder() method.
                
> Incorrect WSDL generated for bare parameter style
> -------------------------------------------------
>
>                 Key: TUSCANY-3824
>                 URL: https://issues.apache.org/jira/browse/TUSCANY-3824
>             Project: Tuscany
>          Issue Type: Bug
>          Components: Java SCA Axis Binding Extension
>    Affects Versions: Java-SCA-1.6.1
>            Reporter: Simon Nash
>            Assignee: Simon Nash
>             Fix For: Java-SCA-1.x
>
>         Attachments: TUSCANY-3824.patch
>
>
> For a method with 
> @SOAPBinding(parameterStyle=SOAPBinding.ParameterStyle.BARE), the JAX-WS RI 
> generates WSDL with a global element name and message part name that are the 
> same as the operation name. Tuscany generates WSDL with a global element name 
> and message part name of arg0, and it adds soapAction to provide the 
> operation name.
> The JAX-WS specification says that the global element name and message part 
> name must be the same as the operation name, so Tuscany is generating WSDL 
> for bare operations that doesn't conform to the JAX-WS rules. The JAX-WS 
> specification also says that soapAction should be null unless 
> @WebMethod(action=....) is specified. The Tuscany WSDL generator should use 
> the correct JAX-WS mapping for the global element name and message part name, 
> and should remove the nonstandard addition of soapAction.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Reply via email to