Amila,

Attaching the wsdl file used to generate the code. The code generated with 
axis2 1.3 with JDK1.6 has wrong sequence in serialization and parsing.
The generated code TAMNotify2.java has orders of in0 and in1 reversed compared 
to JDK1.5

The code generated with axis2.1.5 with JDK1.6 ls ok having proper order but 
give some ADB Exceptions for nillable element. At this point of time it may not 
be feasible for us to upgrade to axis2 1.5 and fix all the issue.

Please can you have a look and provide any suggestion to make it work with 
axis2 1.3.

Thanks
Yogiraj



________________________________
From: Amila Suriarachchi [mailto:[email protected]]
Sent: Friday, September 11, 2009 10:12 AM
To: [email protected]
Subject: Re: axis2 1.3 - jdk1.6 generates wrong argument sequence in soap 
message


On Wed, Sep 9, 2009 at 10:27 PM, BENDALE, Yogiraj (Yogiraj) 
<[email protected]<mailto:[email protected]>> wrote:

Amila,



The wsdl file I used are same only difference is we started using JDK1.6 from 
JDK1.5 and now any client compiled from JDK1.5 does not work.

It gives org.apache.axis2.databinding.ADBException

first check which version produces the wrong order.
Generated code should have the same order as the wsdl used in code gen.

then send us the wsdl file and jdk version with produces the wrong code.
Please try with the Axis2 1.5 as well.

thanks,
Amila.



Thanks

Yogiraj





From: Amila Suriarachchi 
[mailto:[email protected]<mailto:[email protected]>]
Sent: Wednesday, September 09, 2009 7:20 PM
To: [email protected]<mailto:[email protected]>
Subject: Re: axis2 1.3 - jdk1.6 generates wrong argument sequence in soap 
message



are the two wsdl files same?

thanks
Amila.

On Wed, Sep 9, 2009 at 6:54 PM, BENDALE, Yogiraj (Yogiraj) 
<[email protected]<mailto:[email protected]>> wrote:



Hi,



We are using axis2 1.3 with JDK1.5.



Recently we upgraded to JDK1.6 and found that the client and server generated 
with JDK1.6 and axis2 1.3 works fine.

But the client of axis2 1.3 JDK1.6 does not work axis2 1.3 -JDK1.5.

Looking at the generated code it seems that WSDL2Java generated code with 
JDK1.6 changes the order of arguments sent on SOAP message.



Is there any options or parameters need to be set.



In both the generated file definition of in0 and in1 is same.



SOAPResponseData localIn0;

ArrayOfMapItem localIn1;



JDK1.6:-





              while (!reader.isStartElement() && !reader.isEndElement())

                    reader.next();



                if (reader.isStartElement() &&

                        new javax.xml.namespace.QName("", "in1").equals(

                            reader.getName())) {

                    
object.setIn1(com.lucent.nos.wsam.gateways.soap.NOTIFY2.ArrayOfMapItem.Factory.parse(

                            reader));



                    reader.next();

                } // End of if for expected property start element



                else {

                    // A start element we are not expecting indicates an 
invalid parameter was passed

                    throw new org.apache.axis2.databinding.ADBException(

                        "Unexpected subelement " + reader.getLocalName());

                }



                while (!reader.isStartElement() && !reader.isEndElement())

                    reader.next();



                if (reader.isStartElement() &&

                        new javax.xml.namespace.QName("", "in0").equals(

                            reader.getName())) {

                    
object.setIn0(com.lucent.nos.wsam.gateways.soap.NOTIFY2.SOAPResponseData.Factory.parse(

                            reader));



                    reader.next();

                } // End of if for expected property start element





JDK1.5



                while (!reader.isStartElement() && !reader.isEndElement())

                    reader.next();



                if (reader.isStartElement() &&

                        new javax.xml.namespace.QName("", "in0").equals(

                            reader.getName())) {

                    
object.setIn0(com.lucent.nos.wsam.gateways.soap.NOTIFY2.SOAPResponseData.Factory.parse(

                            reader));



                    reader.next();

                } // End of if for expected property start element



                else {

                    // A start element we are not expecting indicates an 
invalid parameter was passed

                    throw new org.apache.axis2.databinding.ADBException(

                        "Unexpected subelement " + reader.getLocalName());

                }



                while (!reader.isStartElement() && !reader.isEndElement())

                    reader.next();



                if (reader.isStartElement() &&

                        new javax.xml.namespace.QName("", "in1").equals(

                            reader.getName())) {

                    
object.setIn1(com.lucent.nos.wsam.gateways.soap.NOTIFY2.ArrayOfMapItem.Factory.parse(
                            reader));



                    reader.next();







Let me know if any more information required.



Thanks

Yogiraj







--
Amila Suriarachchi
WSO2 Inc.
blog: http://amilachinthaka.blogspot.com/



--
Amila Suriarachchi
WSO2 Inc.
blog: http://amilachinthaka.blogspot.com/

Attachment: TAMSOAPNotify2Data.wsdl
Description: TAMSOAPNotify2Data.wsdl

Attachment: TAMSOAPNotify2.wsdl
Description: TAMSOAPNotify2.wsdl

Reply via email to