Hi Amila, Should I try the latest nightly build now if the fix has been checked in?
- Vish. ________________________________ From: Pantvaidya, Vishwajit [mailto:[EMAIL PROTECTED] Sent: Monday, October 29, 2007 10:43 AM To: [email protected] Subject: RE: [Axis2] 1.3 wsdl2java generates code with missing methods Thanks Amila. Can you let me know which nightly build I should take to try out the fix? ________________________________ From: Amila Suriarachchi [mailto:[EMAIL PROTECTED] Sent: Monday, October 29, 2007 4:57 AM To: [email protected] Subject: Re: [Axis2] 1.3 wsdl2java generates code with missing methods I have fixed this issue locally. will commit soon. Amila. On 10/25/07, Pantvaidya, Vishwajit <[EMAIL PROTECTED] <mailto:[EMAIL PROTECTED]> > wrote: A quick clarification - the MessageReceiverInOut class generated by wsdl2java contains references to the missing methods. As this is an autogenerated class, I do not want to edit it myself to remove these problems. Any insights? ________________________________ From: Pantvaidya, Vishwajit [mailto:[EMAIL PROTECTED]<mailto:[EMAIL PROTECTED]>] Sent: Tuesday, October 23, 2007 5:25 PM To: [email protected]<mailto:[email protected]> Subject: Axis2 1.3 wsdl2java generates code with missing methods I am using wsdl2java to generate java code from a wsdl using wsdl2java options "-o -ss -sd -ssi -f -uw -uri -ns2p". The result includes a MessageReceiverInOut class that is missing a method resulting in a compiletime error "method wrapIsUploadAllowed(OperationStatusType) is undefined for the type ...MessageReceiverInOut". I observed that this seems to happen when wsdl parts in different messages refer to the same complex type. In such cases, the wrap methods in the MessageReceiver class for the first operation is created while that for the other one is not created. E.g. in this case the method wrapUpload(OperationStatusType) gets created while wrapIsUploadAllowed(OperationStatusType) is missing. Wsdl snippet is included below. Is this a bug? <s:complexType name="OperationStatusType"> <s:sequence> <s:element name="successFlag" type="s:boolean"/> <s:element name="messageLevel" type="s:string"/> <s:element name="messageCode" type="s:string"/> <s:element name="message" type="s:string"/> </s:sequence> </s:complexType> <s:element name="OperationStatusElement" type="tns:OperationStatusType"/> <s:element name="UploadRequestElement"> <s:complexType> <s:sequence> <s:element name="sessiontoken" type="s:string"/> <s:element name="trackingnumber" type="s:string"/> <s:element name="version" type="s:int"/> </s:sequence> </s:complexType>> </s:element> <s:element name="IsUploadAllowedRequestElement"> <s:complexType> <s:sequence> <s:element name="SessionToken" type="s:string"></s:element> <s:element name="TrackingNumber" type="s:string"></s:element> <s:element name="Version" type="s:int"></s:element> </s:sequence> </s:complexType> </s:element> ... <wsdl:message name="UploadRequest"> <wsdl:part name="uploadrequest" element="tns:UploadRequestElement"></wsdl:part> </wsdl:message> <wsdl:message name="UploadResponse"> <wsdl:part name="uploadoperationstatus" element="tns:OperationStatusElement"></wsdl:part> </wsdl:message> <wsdl:message name="IsUploadAllowedRequest"> <wsdl:part name="uploadcheckrequest" element="tns:IsUploadAllowedRequestElement"></wsdl:part> </wsdl:message> <wsdl:message name="IsUploadAllowedResponse"> <wsdl:part name="uploadcheckoperationstatus" element="tns:OperationStatusElement"></wsdl:part> </wsdl:message> ... <wsdl:operation name="Upload"> <wsdl:input message="tns:UploadRequest"></wsdl:input> <wsdl:output message="tns:UploadResponse"></wsdl:output> </wsdl:operation> <wsdl:operation name="IsUploadAllowed"> <wsdl:input message="tns:IsUploadAllowedRequest"></wsdl:input> <wsdl:output message="tns:IsUploadAllowedResponse"></wsdl:output> </wsdl:operation> ... <soap:binding transport="http://schemas.xmlsoap.org/soap/http" style="document"/> <wsdl:operation name="Upload"> <soap:operation soapAction="" style="document"/> <wsdl:input> <soap:body use="literal"/> </wsdl:input> <wsdl:output> <soap:body use="literal"/> </wsdl:output> </wsdl:operation> <wsdl:operation name="IsUploadAllowed"> <soap:operation soapAction="" style="document"/> <wsdl:input> <soap:body use="literal"/> </wsdl:input> <wsdl:output> <soap:body use="literal"/> </wsdl:output> </wsdl:operation> ... -- Amila Suriarachchi, WSO2 Inc.
