First, indicate what complex types of your web service call or response are in your WSDL
<xsd:element name="AWebServiceElementName"> <xsd:complexType> <xsd:sequence> <xsd:element maxOccurs="1" minOccurs="1" name="header" type="tns:ReplyHeader"/> <xsd:element maxOccurs="1" minOccurs="1" name="body"> <xsd:complexType> <xsd:sequence> <xsd:element maxOccurs="unbounded" minOccurs="0" name="acomplextype" type="tns:acomplextype"/> <xsd:element maxOccurs="1" minOccurs="1" name="anothercomplextype" type="tns:anothercomplextype"/> </xsd:sequence> </xsd:complexType> </xsd:element> </xsd:sequence> </xsd:complexType> </xsd:element>
and then determine what your complex types contain:
<xsd:complexType name="acomplextype"> <xsd:sequence> <xsd:element maxOccurs="1" minOccurs="1" name="somefieldid" type="xsd:long"/> <xsd:element maxOccurs="1" minOccurs="1" name="somestring" type="xsd:string"/> </xsd:sequence> </xsd:complexType> <xsd:complexType name="anothercomplextype"> <xsd:sequence> <xsd:element maxOccurs="1" minOccurs="1" name="somefieldid" type="xsd:long"/> <xsd:element maxOccurs="1" minOccurs="1" name="somestring" type="xsd:string"/> </xsd:sequence> </xsd:complexType>
On the Java side, you need a wrapper class that contains these fields using getters and seters
source share