axis-java-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From S?bastien Tardif (JIRA) <axis-...@ws.apache.org>
Subject [jira] Created: (AXIS-1675) WSDL2Java doesn’t use return value when two out parameters exist.
Date Fri, 19 Nov 2004 21:33:24 GMT
WSDL2Java doesn’t use return value when two out parameters exist.
-----------------------------------------------------------------

         Key: AXIS-1675
         URL: http://nagoya.apache.org/jira/browse/AXIS-1675
     Project: Axis
        Type: Bug
  Components: Serialization/Deserialization  
    Versions: 1.2RC2    
 Environment: cvs 11/19/2004
    Reporter: Sébastien Tardif


Title: WSDL2Java doesn’t use return value when two out parameters exist.

>From my WSDL I get this:
void getDocument(Credential credential, Users users, DocumentRequest documentRequest, DocumentResponseHolder
_return, ByteArrayHolder document) throws RemoteException;

void getDocumentAsAttachment(Credential credential, Users users, DocumentRequest documentRequest,
OctetStreamHolder document, holders.DocumentResponseHolder _return) throws RemoteException;

As you can see operation [getDocument] has two out parameters: [document] and [return]. 

Operation [getDocumentAsAttachment] has also two out parameters: [document] and [return].

The result should be:

DocumentResponse getDocument(Credential credential, Users users, DocumentRequest documentRequest,
ByteArrayHolder document) throws RemoteException;
    
DocumentResponse getDocumentAsAttachment(Credential credential, Users users, DocumentRequest
documentRequest, OctetStreamHolder document) throws RemoteException;

The code in Axis try sometime to take one of the out parameters and take it as the return
type but in my case it doesn’t trigger.

To have a long time fix I suggest to just implement right now the JAX-RPC 2.0 way which is
to map to the return value of the signature the element using name: [return] as shown below:

>From section 2.3.2 Parameter Order and Return Type of JAX-RPC 2.0 specification:
Wrapper style mapping If there is a single out wrapper child then it forms the method return
type, 
if there is an out wrapper child with a local name of “return” then it forms the method
return 
type, otherwise the return type is void. 

>From section 3.8.2 Method and Parameters of JAX-RPC 2.0 specification:
<xsd:element name="getPriceResponse" type="tns:getPriceResponseType"/>
<xsd:complexType name="getPriceResponseType">
 <xsd:sequence>
  <xsd:element name="return" type="xsd:float"/>
 </xsd:sequence>
</xsd:complexType>


-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
   http://nagoya.apache.org/jira/secure/Administrators.jspa
-
If you want more information on JIRA, or have a bug to report see:
   http://www.atlassian.com/software/jira


Mime
View raw message