axis-java-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Jongjin Choi (JIRA)" <>
Subject [jira] Commented: (AXIS-1524) Extension and sequence order
Date Thu, 28 Oct 2004 17:19:35 GMT
     [ ]
Jongjin Choi commented on AXIS-1524:

Can you try this?

1. Run wsdl2java on the wsdl with appropriate namespace and package mapping and --helperGen

2. Then deploy the generated helper classes along with the orignal classes. 

I got the correct-ordered SOAP message this way.

> Extension and sequence order
> ----------------------------
>          Key: AXIS-1524
>          URL:
>      Project: Axis
>         Type: Bug
>     Versions: 1.1, 1.2 Beta
>  Environment: Both Sun Solaris and Windows XP
>     Reporter: Timothy Barlotta

> I seem to have come across an inconsistency in Axis when dealing with inheritance (or
I am doing something wrong - both valid possibilities).  The WSDL is alphabetically sorted
and so is the SOAP return message, however the SOAP return message does not take inheritance
into effect - this results in the order of the SOAP return message being incorrect.
> I wrote two java classes: one is and the other
 SpecificResponse is a subclass of GenericResponse.  For examples sake let's say that
has the following:
> public long getA()
> public long getB()
> public long getD()
> and SpecificResponse adds:
> public long getC()
> The relevant section of the wsdd for it looks like this:
> 	<service name="MyWebService" provider="java:RPC">
> 		<parameter name="allowedMethods" value="sendMail"/>
> 		<parameter name="isStatic" value="false"/>
> 		<parameter name="scope" value="request"/>
> 		<parameter name="className" value="com.webservice.MyWebService"/>
> 		<parameter name="wsdlTargetNamespace" value="http://postagestatementwizard.wws"/>
> 		<beanMapping languageSpecificType="java:com.webservice.GenericResponse" qname="ns33:GenericResponse"
> 		<beanMapping languageSpecificType="java:com.webservice.SpecificResponse" qname="ns34:SpecificResponse"
>  	</service>
> The resulting WSDL file becomes (relevant section): <complexType name="GenericResponse">
<sequence> <element name="a" type="xsd:long"/> <element name="b" type="xsd:long"/>
<element name="d" type="xsd:long"/> </sequence> </complexType>
> <complexType name="SpecificResponse">
> <complexContent>
> <extension base="tns2:GenericResponse">
> <sequence>
> <element name="c" type="xsd:long"/>
> </sequence>
> </extension>
> </complexContent>
> </complexType>
> I would expect the SOAP response message to be in the order of a, b, d, c but it comes
back a, b, c, d.
> The relevant SOAP message is:
> 	<a xsi:type="xsd:long">0</a>
> 	<b xsi:type="xsd:long">0</b>
>  	<c xsi:type="xsd:long">0</c>
> 	<d xsi:type="xsd:long">0</d>
> Is anyone else seeing this?  Is there a better way to accomplish this - using inheritance.
 I have had this problem in 1.1 and 1.2b2.  This does not cause a problem with Axis clients
but does with other toolkits clients (Sun One for example).
> I have posted this to both the user and dev mailing lists but have not heard anything

This message is automatically generated by JIRA.
If you think it was sent incorrectly contact one of the administrators:
If you want more information on JIRA, or have a bug to report see:

View raw message