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.