users@jaxb.java.net

Re: Naming when creating a list of complex elements

From: ofira shaer <oshaer_at_gmail.com>
Date: Thu, 16 Jul 2009 12:11:58 +0300

Thanks a lot! i will try this.

2009/7/16 Wolfgang Laun <wolfgang.laun_at_gmail.com>

> Full control over property names is possible with customization:
>
> <xs:element name="Field" type="Field"
> minOccurs="0" maxOccurs="unbounded">
> <xs:annotation>
> <xs:appinfo>
> <jxb:property name="FieldList"/>
> </xs:appinfo>
> </xs:annotation>
> </xs:element>
>
> -W
>
>
> On Thu, Jul 16, 2009 at 10:35 AM, ofira shaer<oshaer_at_gmail.com> wrote:
> > Hi.
> >
> > I am trying to define a list of complex elements, specifically, an Action
> > that contains some Fields.
> >
> > My schema definitions are as follows:
> >
> >
> >
> > <xs:complexType name="Field">
> >
> > <xs:sequence>
> >
> > <xs:element ref="FieldName"/>
> >
> > <xs:element name="FieldValue" type="xs:string"/>
> >
> > </xs:sequence>
> >
> > </xs:complexType>
> >
> > <xs:complexType name="Action">
> >
> > <xs:sequence>
> >
> > <xs:element name="ActionName" type="ActionName"/>
> >
> > <xs:element name="ActionCode" type="ActionCode"/>
> >
> > <xs:element name="FieldsList" type="Field" minOccurs="0"
> > maxOccurs="unbounded"/>
> >
> > </xs:sequence>
> >
> > </xs:complexType>
> >
> > Jaxb maps this into an Action class that has a getFieldsList() method,
> > returning a List<Field> , which is exactly what i want.
> >
> > The problem is that in the resulting XML, I get this:
> >
> > <Action>
> > <FieldsList>
> > <FieldName>
> > <FieldValue>
> >
> > <FieldsList>
> > <FieldName>
> > <FieldValue>
> >
> > <FieldsList>
> > <FieldName>
> > <FieldValue>
> > </Action>
> >
> > While I expect:
> >
> > <Action>
> > <Field>
> > <FieldName>
> > <FieldValue>
> >
> > <Field>
> > <FieldName>
> > <FieldValue>
> >
> > <Field>
> > <FieldName>
> > <FieldValue>
> > </Action>
> >
> > Of course if i change the Action definition to
> >
> > <xs:element name="Field" type="Field" minOccurs="0"
> maxOccurs="unbounded"/>
> >
> > I get a function getField() which returns a List<Field>, and this is not
> > reasonable.
> >
> > Is there anyway to get this to work as I expect?
> >
> > Thanks.
> > Ofira.
> >
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: users-unsubscribe_at_jaxb.dev.java.net
> For additional commands, e-mail: users-help_at_jaxb.dev.java.net
>
>