Hello Castors,
I need to use super-classes java-side, and sub-classes xml-side :
For instance, I have a generic "Field" class (its objects stored in a
List attribute of a "Form" class) with polymorphic methods (such as
getAttributes). I also have some sub-classes like "TextField" or
"RadioField" wich inherit from "Field", but I don't want to manipulate
them java-side, only their Field super-class. Those TextField and
RadioField sub-classes are intialized in the XML, directly as child of
the "Form" element (no Field element in the XML).
As I did not use Java packages, this worked FINE with Castor, with a
simple mapping for lists, all objects were correctly instantiated.
BUT here comes the issue, when I use packages (of course I put the new
package name before the class name in Castor mapping class element),
this does not work anymore : "org.xml.sax.SAXException: unable to find
FieldDescriptor for 'text-field' in ClassDescriptor of form {file: [not
available];"
<mapping>
<class name="form.Form" auto-complete="true">
<map-to xml="form" />
<field name="FieldsList" type="form.Field"
collection="collection">
<bind-xml name="field" />
</field>
</class>
<class name="form.RadioField" auto-complete="true">
<field name="LabelsList" type="java.lang.String"
collection="collection">
<bind-xml name="label" />
</field>
<field name="SelectedList" type="java.lang.Integer"
collection="collection">
<bind-xml name="selected" />
</field>
</class>
<class name="form.TextField" auto-complete="true" >
<field name="TextLabel" type="java.lang.String"
node="element">
</field>
</class>
</mapping>
I do no see the link between packages and inheritance. Surely the
solution is in the mapping file. Is there somebody who can help ? Thanks
in advance.
--
Hugues Pichereau - Webmaster
Telemedicine Technologies
-----------------------------------------------------------
If you wish to unsubscribe from this mailing, send mail to
[EMAIL PROTECTED] with a subject of:
unsubscribe castor-dev