Hi,
I'm having an issue with Axis2 Vs Axis1.3 code generation using WSDL2Java when using HashMap as a parameter to one of my methods. I've explained in detail what the problem I'm getting. Is there a solution to this issue. I'm will be using Axis2 for developing my services, I need some help in how to use OMElement to pass objects to the service method etc. I have a Java Interface say which has a method that takes in HashMap as a parameter. import java.util.HashMap; public interface TestWS { public String method1 (HashMap hashMap); } Axis 1.3 When I generated WSDL from this interface using Java2WSDL, it created the wsdl as follows <wsdl:types> <schema elementFormDefault="qualified" targetNamespace="http://DefaultNamespace" xmlns="http://www.w3.org/2001/XMLSchema"> <import namespace="http://xml.apache.org/xml-soap"/> <element name="method1"> <complexType> <sequence> <element name="in0" type="apachesoap:Map"/> </sequence> </complexType> </element> <element name="method1Response"> <complexType> <sequence> <element name="method1Return" type="xsd:string"/> </sequence> </complexType> </element> </schema> <schema elementFormDefault="qualified" targetNamespace="http://xml.apache.org/xml-soap" xmlns="http://www.w3.org/2001/XMLSchema"> <complexType name="mapItem"> <sequence> <element name="key" nillable="true" type="xsd:anyType"/> <element name="value" nillable="true" type="xsd:anyType"/> </sequence> </complexType> <complexType name="Map"> <sequence> <element maxOccurs="unbounded" minOccurs="0" name="item" type="apachesoap:mapItem"/> </sequence> </complexType> </schema> </wsdl:types> And when I created the server side & client side code using this wsdl with WSDL2Java, my Java (stub & skeleton) classes were created with the java.util.HashMap as a parameter to method 1. C# Client using Axis1.3 wsdl When I generated the C# client using this WSDL file, it created a mapItem array as a parameter to the method1 where mapItem is a class having key & value as objects. Axis2 (1.2) When I generated WSDL from this interface using Java2WSDL, it created the wsdl as follows <wsdl:types> <xs:schema attributeFormDefault="qualified" elementFormDefault="qualified" targetNamespace="http://ws.apache.org/axis2/xsd" xmlns:xs="http://www.w3.org/2001/XMLSchema"> <xs:element name="method1"> <xs:complexType> <xs:sequence> <xs:element name="param0" nillable="true" type="xs:anyType"/> </xs:sequence> </xs:complexType> </xs:element> <xs:element name="method1Response"> <xs:complexType> <xs:sequence> <xs:element name="return" nillable="true" type="xs:string"/> </xs:sequence> </xs:complexType> </xs:element> </xs:schema> </wsdl:types> And when I created the server side & client side code using this wsdl with WSDL2Java, my Java (stub & skeleton) classes were created with OMElement as a parameter to method 1. C# Client using Axis2 (1.2) wsdl When I generated the C# client using this WSDL file, it created a method1 object as a parameter to the method1 where method1 is a class having one object as its member. Thanks Raghu