Hello:
I want to generate a "homogenous" lists of my xs:choice elements.
But, I am a little bit confused by JAXB 1.0.X's treatment of unnamed
xs:choice groups.
Consider following example which is a modified version of "bind-choice"
sample shipped with JAXB.
Custom binding:
<jxb:globalBindings bindingStyle="modelGroupBinding"/>
Schema :
<xs:element name="FooBar">
<xs:complexType>
<xs:sequence>
<xs:choice>
* <xs:element name="phoneNumber" type="xs:string"
minOccures="0" maxOcuurs="unbounded"/>
<xs:element name="speedDial" type="xs:int" minOccures="0"
maxOcuurs="unbounded"/>
* </xs:choice>
</xs:complexType>
</xs:element>
Generated FooBar Bean contains
public List getPhoneNumberOrSpeedDial() - elements of list are of type
PhoneNumberOrSpeedDial
PhoneNumberOrSpeedDial{
getPhoneNumber();
isSetPhoneNumber();
isSetSeedDial();
getSpeedDial();
}
Instead is't it simpler for FooBar to contain methods
List getPhoneNumbers();
List getSpeedDials();
The lists would be empty when phone numbers/speeddials donot occur in a
XML instance.
What was the rational behind current behavior. Am i missing something here ?
Is the treatment better in JAX 2.0 ?
-Prashant