axis-java-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Pantvaidya, Vishwajit" <vpant...@selectica.com>
Subject RE: [Axis2] 1.3 wsdl2java generates code with missing methods
Date Fri, 09 Nov 2007 19:36:03 GMT
Yes Amila - the code successfully generated without any compilation errors and my custom exception
classes are also ok. Thanks for all of your fixes and for being patient with me.

One last question - my axis2 service throwing a custom exception is not backwardly compatible
with my Axis1 service whose methods threw RemoteException. From one of your earlier replies,
I get the impression that you expect Axis2 to also behave similarly (in the absence of fault
declarations for an operation in wsdl). Is this correct? If yes - are you planning to fix
this? Alternatively, is there another way to explicitly specify a fault with java RemoteException
in the wsdl?


>-----Original Message-----
>From: Amila Suriarachchi [mailto:amilasuriarachchi@gmail.com]
>Sent: Friday, November 09, 2007 12:15 AM
>To: axis-user@ws.apache.org
>Subject: Re: [Axis2] 1.3 wsdl2java generates code with missing methods
>
>could you solve this problem? I could generate the code sucessfully
>for your wsdl
>with the fault fixe I have given.
>
>Amila.
>
>On Nov 8, 2007 8:49 AM, Pantvaidya, Vishwajit <vpantvai@selectica.com>
>wrote:
>> I looked into the code generate and the missing methods issue is fixed.
>Thanks for the fix.
>>
>> Now I added a wsdl:fault specification in the wsdl - and I get the
>exception:
>>
>>      [java] Caused by: java.lang.RuntimeException: Element QName is null
>for ECMServiceExceptionMessage!
>>      [java]     at
>org.apache.axis2.wsdl.codegen.emitter.AxisServiceBasedMultiLanguageEmitter.
>getFaultParamElements(AxisServiceBasedMultiLanguageEmitter.java:2795)
>>      [java]     at
>org.apache.axis2.wsdl.codegen.emitter.AxisServiceBasedMultiLanguageEmitter.
>getFaultElement(AxisServiceBasedMultiLanguageEmitter.java:2714)
>>      [java]     at
>org.apache.axis2.wsdl.codegen.emitter.AxisServiceBasedMultiLanguageEmitter.
>generateMethodElement(AxisServiceBasedMultiLanguageEmitter.java:2237)
>>      [java]     at
>org.apache.axis2.wsdl.codegen.emitter.AxisServiceBasedMultiLanguageEmitter.
>loadOperations(AxisServiceBasedMultiLanguageEmitter.java:2119)
>>      [java]     at
>org.apache.axis2.wsdl.codegen.emitter.AxisServiceBasedMultiLanguageEmitter.
>createDOMDocumentForSkeletonInterface(AxisServiceBasedMultiLanguageEmitter.
>java:2076)
>>      [java]     at
>org.apache.axis2.wsdl.codegen.emitter.AxisServiceBasedMultiLanguageEmitter.
>writeSkeletonInterface(AxisServiceBasedMultiLanguageEmitter.java:1985)
>>      [java]     at
>org.apache.axis2.wsdl.codegen.emitter.AxisServiceBasedMultiLanguageEmitter.
>emitSkeleton(AxisServiceBasedMultiLanguageEmitter.java:1311)
>>
>> Seems like this was a bug earlier in Axis2 - has that reappeared again in
>this nightly build?
>> A more basic question I have asked earlier - Axis1 used to generate
>skeleton interface methods that threw java.lang.RemoteException by default
>- that no longer happens in Axis2. Is that a bug or by design? If that ia a
>bug and can be fixed - I no longer have to define a custom fault in wsdl.
>>
>>
>> Please let me know.
>>
>>
>> Thanks,
>>
>> Vish.
>>
>>
>>
>> >-----Original Message-----
>> >From: Pantvaidya, Vishwajit [mailto:vpantvai@selectica.com]
>> >Sent: Wednesday, November 07, 2007 12:34 PM
>> >To: axis-user@ws.apache.org
>> >Subject: RE: [Axis2] 1.3 wsdl2java generates code with missing methods
>> >
>>
>> >Their was no stack trace - but after today's research I have found that
>the
>> >problem was because of the saxon7.jar in my lib space. I did not want to
>> >remove it - so I just added <jvmarg value="-
>>
>>Djavax.xml.transform.TransformerFactory=org.apache.xalan.processor.Transfo
>r
>> >merFactoryImpl"/> in my wsdl2java task and now the build completes
>without
>> >the earlier error ("Error reported by XML parser: Premature end of
>file.").
>> >
>> >It will be good to add this to Axis FAQ or Known Problems/Workarounds.
>Do
>> >you want me to do this?
>> >
>> >
>> >- Vish.
>> >
>> >>-----Original Message-----
>> >>From: Amila Suriarachchi [mailto:amilasuriarachchi@gmail.com]
>> >>Sent: Wednesday, November 07, 2007 12:48 AM
>> >>To: axis-user@ws.apache.org
>> >>Subject: Re: [Axis2] 1.3 wsdl2java generates code with missing methods
>> >>
>> >>are you getting any stack trace.
>> >>if not put all your jars to axis lib and run the wsdl2java tool.
>> >>see whether you can get any stack trace.
>> >>
>> >>amila.
>> >>
>> >>On Nov 7, 2007 11:12 AM, Pantvaidya, Vishwajit <vpantvai@selectica.com>
>> >>wrote:
>> >>>
>> >>>
>> >>>
>> >>>
>> >>> -          I downloaded the latest nightly Axis2 1.3 build (dated
>> >>> 06-Nov-2007)
>> >>>
>> >>> -          included the relevant axis2 jars into my lib space (which
>has
>> >>> other non-axis jars that I need)
>> >>>
>> >>> -          then running wsdl2java using my ant task gave following
>> >error:
>> >>>
>> >>> o        [java] Error on line -1
>> >>>
>> >>> o        [java]   Error reported by XML parser: Premature end of
>file.
>> >>>
>> >>> -          Ant build gave "completed successfully" message and some
>java
>> >>> code has got built from the wsdl, it seems to be ok - I need to look
>in
>> >>more
>> >>> detail.
>> >>>
>> >>>
>> >>>
>> >>> I have following questions:
>> >>>
>> >>> -          I then ran wsdl2java with only the axis nightly build jars
>> >>(i.e.
>> >>> deleted other non-axis jars from my lib space) and it worked fine
>> >without
>> >>> any errors. So this seems to be a jar conflict issue. Does anyone
>know
>> >>> offhand what jar conflicts can cause above error?
>> >>>
>> >>> -          I was not getting this error with the regular 1.3 download
>-
>> >>so
>> >>> is this jar conflict introduced by any changes since 1.3?
>> >>>
>> >>>
>> >>>
>> >>> Looking into this, I think that Sun bundling apache classes into java
>> >>1.4.2
>> >>> and 5.0 rt.jar adds uncertainty into which classes are getting used
>by
>> >>> wsdl2java. Any thoughts how I can improve upon this and get some
>> >>certainty?
>> >>>
>> >>>
>> >>>
>> >>>
>> >>>
>> >>>
>> >>>
>> >>>
>> >>>  ________________________________
>> >>>
>> >>>
>> >>> From: Amila Suriarachchi [mailto:amilasuriarachchi@gmail.com]
>> >>>  Sent: Monday, November 05, 2007 8:34 PM
>> >>>
>> >>>  To: axis-user@ws.apache.org
>> >>>
>> >>>  Subject: Re: [Axis2] 1.3 wsdl2java generates code with missing
>methods
>> >>>
>> >>>
>> >>>
>> >>>
>> >>>
>> >>> yes, now the nighly build should have this.
>> >>>
>> >>>
>> >>> On 11/6/07, Pantvaidya, Vishwajit <vpantvai@selectica.com> wrote:
>> >>>
>> >>>
>> >>>
>> >>> Hi Amila,
>> >>>
>> >>>
>> >>>
>> >>> Should I try the latest nightly build now if the fix has been checked
>> >in?
>> >>>
>> >>>
>> >>>
>> >>>
>> >>>
>> >>> - Vish.
>> >>>
>> >>>
>> >>>
>> >>>
>> >>>  ________________________________
>> >>>
>> >>>
>> >>> From: Pantvaidya, Vishwajit [mailto: vpantvai@selectica.com]
>> >>>  Sent: Monday, October 29, 2007 10:43 AM
>> >>>  To: axis-user@ws.apache.org
>> >>>  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:amilasuriarachchi@gmail.com]
>> >>>  Sent: Monday, October 29, 2007 4:57 AM
>> >>>  To: axis-user@ws.apache.org
>> >>>  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 <vpantvai@selectica.com > 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:vpantvai@selectica.com]
>> >>>  Sent: Tuesday, October 23, 2007 5:25 PM
>> >>>  To: axis-user@ws.apache.org
>> >>>  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.
>> >>>
>> >>>
>> >>>
>> >>>
>> >>>  --
>> >>>  Amila Suriarachchi,
>> >>>  WSO2 Inc.
>> >>
>> >>
>> >>
>> >>--
>> >>Amila Suriarachchi,
>> >>WSO2 Inc.
>> >>
>> >>---------------------------------------------------------------------
>> >>To unsubscribe, e-mail: axis-user-unsubscribe@ws.apache.org
>> >>For additional commands, e-mail: axis-user-help@ws.apache.org
>> >
>> >
>> >---------------------------------------------------------------------
>> >To unsubscribe, e-mail: axis-user-unsubscribe@ws.apache.org
>> >For additional commands, e-mail: axis-user-help@ws.apache.org
>>
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: axis-user-unsubscribe@ws.apache.org
>> For additional commands, e-mail: axis-user-help@ws.apache.org
>>
>>
>
>
>
>--
>Amila Suriarachchi,
>WSO2 Inc.
>
>---------------------------------------------------------------------
>To unsubscribe, e-mail: axis-user-unsubscribe@ws.apache.org
>For additional commands, e-mail: axis-user-help@ws.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: axis-user-unsubscribe@ws.apache.org
For additional commands, e-mail: axis-user-help@ws.apache.org


Mime
View raw message