Hi Werner thanks for your response. How do you think this issue can be addressed to get the xml in the format that I require?
thanks Sarathi 2009/7/24 Werner Guttmann <[email protected]> > Hi again > > Sarathi Balasundaram wrote: > > Hi > > > > This is my first stab at using Castor...It has been good > learning > > curve so > > far. I am presently stuck with something and would need your > help > > in > > resolving it. > > > > > > > > The output xml that I am looking for should be as below > > > > <my-response> > > <employee-wrapper> > > <manager/> > > </employee-wrapper> > > > > <employee-wrapper> > > <manager/> > > </employee-wrapper> > > > > </my-response> > > > > > > > > My mapping looks as below > > > > <class name="MyResponse" auto-complete= > > "true"> > > <map-to xml="my-response"/> > > <field name="employees" type="Employee" > > collection="array"> > > <bind-xml auto-naming="deriveByClass" > location= > > "employee-wrapper" node="element"/> > > </field> > > </class> > > > > > > Employee is an abstract class. Manager and Worker are concrete > > classes that extend Employee class. > > > > The WSDL definition for employee-wrapper is > > > > <xs:element name="employeeWrapper"> > > <xs:complexType> > > <xs:choice> > > <xs:element name="manager" type="Manager"/> > > <xs:element name="worker" type="Worker"/> > > </xs:choice> > > </xs:complexType> > > </xs:element> > The problem with your approach is that the XML schema (fragment) given > here defines something somepletely different from the mapping you have > defined above. In the XML schema, you are using a <xs:choice> to signal > that you want either a manager or a Worker, but definitely not both of > them. > > > > So, the employeeWrapper can have either manager or worker or > both > > > > > > But the problem that I am facing are of 2 kinds > > > > > > 1. When 2 managers are a part of the employeeWrapper , it fails > > with > > org.exolab.castor.xml.MarshalException: element "manager" > occurs > > more than > > once. > > 2. If there is manager and worker, the output is as below which > > is different from what I expect. > > > > <my-response> > > <employee-wrapper> > > <manager/> > > <worker/> > > </employee-wrapper> > > </my-response> > > > > > > Any help would be appreciated. > > > > thanks > > > > Kind Regards > > Sarathi Balasundaram > > > > --------------------------------------------------------------------- > To unsubscribe from this list, please visit: > > http://xircles.codehaus.org/manage_email > > >

