Works perfectly. Thanks Keith!
> -----Original Message-----
> From: Keith Visco [mailto:[EMAIL PROTECTED]
> Sent: Thursday, July 08, 2004 5:10 PM
> To: [EMAIL PROTECTED]
> Subject: Re: [castor-user] [XML] Confused by unmarshaled XML
>
>
>
>
> Hi Angelina,
>
> This happens because you are marshalling the class that
> corresponds to the complexType. Since it's the complexType
> class, it doesn't correlate to a specific element. The XML
> name could really be anything, Castor automatically creates
> an XML name for you during the marshalling and simply uses
> the class name to do this.
>
> It would probably be good if Castor added some possible
> correlation to all top-level elements declared of that type.
> In the case of only one element, it could simply choose that
> name, if more than one element, then it would choose the
> first one it found.
>
> In any case, you can specify the "root" element name you want
> in the Marshaller.
>
> Marshaller m = new Marshaller(writer);
> m.setRootElement("APLTask"); m.marshal(myAPLTaskType);
>
> During unmarshalling, the root element name doesn't matter,
> just pass in the complexType for unmarshalling:
>
> Unmarshaller u = new Unmarshaller(APLTaskType.class);
> u.unmarshal(reader);
>
> --Keith
>
>
> > [EMAIL PROTECTED] wrote:
> >
> > I'm confused as to why I'm getting certain XML unmarshaled from my
> > generated Castor classes.
> >
> > For some reason I have a schema snippet (below) that eventually
> > generates XML (also below) where the name of the element is
> the type
> > name rather than the element name as specified in the schema.
> >
> > Schema snippet:
> >
> > <schema
> > xmlns="http://www.w3.org/2001/XMLSchema"
> > targetNamespace="http://www.emc.com/schemas/celerra/apl_1.0"
> > xmlns:apl="http://www.emc.com/schemas/celerra/apl_1.0"
> > xmlns:meta="http://www.emc.com/schemas/celerra/xsd_meta_1.0"
> > xmlns:jaxb="http://java.sun.com/xml/ns/jaxb" jaxb:version="1.0">
> >
> > <element name="APLTask" type="apl:APLTaskType"/>
> >
> > <complexType name="APLTaskType">
> > <sequence minOccurs="0" maxOccurs="unbounded">
> > <element name="List" type="apl:ListType" minOccurs="0"
> > maxOccurs="unbounded"/>
> > </sequence>
> > </complexType>
> >
> > </schema>
> >
> > (obviously there's more than that, but...)
> >
> > XML unmarshaled:
> >
> > <?xml version="1.0" encoding="UTF-8"?>
> > <APLTaskType description="Query capabilities share list."
> > originator="[EMAIL PROTECTED]">
> > <List properties="capable,">
> > <Capabilitys object="share" action="list"/>
> > </List>
> > </APLTaskType>
> >
> > It's the APLTaskType that's really got me confused. Why is it not
> > APLTask? We do generate the classes with the
> > org.exolab.castor.builder.javaclassmapping option in
> > castorbuilder.properties set to "type".
> >
> > Thanks in advance to anyone who can shed some light on this!
> >
> > -Angelina Talley
> >
> > ---------------------------------------------------------------
> > -----------------------------------------------------------
> > If you wish to unsubscribe from this mailing, send mail to
> > [EMAIL PROTECTED] with a subject of:
> > unsubscribe castor-user
>
>
>
> -----------------------------------------------------------
> If you wish to unsubscribe from this mailing, send mail to
> [EMAIL PROTECTED] with a subject of:
> unsubscribe castor-user
>
-----------------------------------------------------------
If you wish to unsubscribe from this mailing, send mail to
[EMAIL PROTECTED] with a subject of:
unsubscribe castor-user