Hi, I have a question about wsdl. The wsdl2java fails in following case. But I feel the wsdl is wrong. I got the following element in a complex type.
<s:complexType name="ResponseBusinessEntity" mixed="false"> <s:complexContent mixed="false"> <s:extension base="tns:ResponseBody"> <s:sequence> <s:choice minOccurs="0" maxOccurs="unbounded"> <s:element name="legalName" type="tns:IndividualName" minOccurs="0"/> <s:element name="mainName" type="tns:OrganisationName" minOccurs="0"/> </s:choice> </s:sequence> </s:extension> </s:complexContent> </s:complexType> I believe this is logically wrong or useless. The choice is multiple. What is the use of it? Does this means there can be 5 choices with 3 legalName and 2 mainName? Then what is use of choice? We can just use both of them without choice, but with minOccurs="0" maxOccurs="unbounded" I believe it should be as follows. <s:choice minOccurs="0" maxOccurs="1"> <s:element name="legalName" type="tns:IndividualName" minOccurs="0" maxOccurs="unbounded"/> <s:element name="mainName" type="tns:OrganisationName" minOccurs="0" maxOccurs="unbounded"/> </s:choice> Anyway axis2 does not generate stub properly for the first case. What do you guys think? Please let me know if I am wrong.