try using the "--noWrapped" flag when u run wsdl2java.

-- dims


On Wed, 9 Feb 2005 11:42:11 -0000, Alistair Sheffield
<[EMAIL PROTECTED]> wrote:
> We have a .NET 1.1 web service which we're trying to use from Java using
> stubs generated by Axis 1.2 RC2 (with the WSDL2Java tool).
> 
> We are calling a method ('QueryExecute') on the web service which takes
> three parameters, one of which is used to return a value ('pRecordSet'). If
> an error occurs when executing the method, it returns a QueryExecuteResult;
> if the method worked as expected, a QueryExecuteResult will not be returned
> in the response.
> Here is the WSDL for the method and the response:
> 
> <s:element name="QueryExecute">
>   <s:complexType>
>     <s:sequence>
>       <s:element minOccurs="0" maxOccurs="1" name="SessionID"
> type="s:string" />
>       <s:element minOccurs="0" maxOccurs="1" name="Query"
> type="tns:csDtoQueryItem" />
>       <s:element minOccurs="0" maxOccurs="1" name="pRecordSet"
> type="tns:csDtoRecordSet" />
>     </s:sequence>
>   </s:complexType>
> </s:element>
> 
> <s:element name="QueryExecuteResponse">
>   <s:complexType>
>     <s:sequence>
>       <s:element minOccurs="0" maxOccurs="1" name="QueryExecuteResult"
> type="tns:csDtoQueryFeedBackList" />
>       <s:element minOccurs="0" maxOccurs="1" name="pRecordSet"
> type="tns:csDtoRecordSet" />
>     </s:sequence>
>   </s:complexType>
> </s:element>
> 
> When we call this method, we get the following error:
> 
> Didn't find specified return QName
> {http://localhost/AgoraWS/Serducts}QueryExecuteResult!
> 
> This is thrown from the following piece of code at line 2513 in Call:
> 
> // If we were looking for a particular QName for the return and
> // still didn't find it, throw an exception
> if (findReturnParam) {
>     String returnParamName = returnParamQName.toString();
>     throw new AxisFault(Messages.getMessage("noReturnParam",
> returnParamName));
> }
> 
> We have debugged Axis and what seems to be happening is that the
> OperationDesc object representing the method which is used in the Call has a
> ParameterDesc  for the return which contains QueryExecuteResult; this causes
> a problem as when the Call searches for the return parameters, it cannot
> find QueryExecuteResult in the return parameters in the response - the
> pRecordSet return parameter is the only return parameter present.
> 
> We can execute this method using a .NET-generated client and it works as
> expected, with no errors.
> 
> Unfortunately, we don't have control over the web service, so have to work
> with what we're given!
> 
> Does anyone have a clue why this doesn't work using the Axis stubs, or how
> to resolve it? It seems that Axis isn't taking into account the
> 'minOccurs="0"' for the QueryExecuteResult; is that the root of the problem?
> 
> Many thanks for any insight!
> 
> Alistair
> 
> This e-mail and any files transmitted with it are confidential and intended 
> solely for the use of the individual or entity to whom it is addressed. If 
> you have received this e-mail in error you must not copy, distribute or take 
> any action in reliance on it. Please notify the sender by e-mail or telephone.
> We utilise an anti-virus system and therefore any files sent via e-mail will 
> have been checked for known viruses. You are however advised to run your own 
> virus check before opening any attachments received as we will not in any 
> event accept any liability whatsoever once an e-mail and/or any attachment is 
> received. Any views expressed by an individual within this e-mail do not 
> necessarily reflect the views of Systems Union Group plc or any of its 
> subsidiary companies.
> 


-- 
Davanum Srinivas - http://webservices.apache.org/~dims/

Reply via email to