Amy,

Castor JDo requires you to have a <sql> element for each field defined in your mapping. If you do not want to persist all fields, please make use of the access and transient attributes as required.

Werner

--Original Message Text---
From: Amy Fong
Date: Tue, 6 Apr 2004 15:29:40 -0400

Hi all,

I am trying to unmarshall a xml file and then using the castor jdo save =
the information to the database. I am getting the following error when I =
try to run the JDO portion of my program.

Error Message:

org.exolab.castor.jdo.DatabaseNotFoundException: Nested error: =
org.xml.sax.SAXException: unable to find FieldDescriptor for 'sql' in =
ClassDescriptor of class


Here is my map file:

<!DOCTYPE databases PUBLIC "-//EXOLAB/Castor Mapping DTD Version 1.0//EN"
"http://castor.exolab.org/mapping.dtd">
<mapping>

<!-- Mapping for Item -->
<class name="Person">
<description>Person Description</description>
<map-to table="person" xml="person" />
<field name="person" type="integer" />
<field name="name" type="string" >
<sql name="name" type="varchar"></sql>
</field>
<field name="tel" type="Tel">
<sql name="tel"></sql>
</field>
</class>

<class name="Tel">
<description>Tel Description</description>
<map-to table="tel" xml="tel" />
<field name="tel" type="integer" />
<field name="type" type="string">
<sql name="type" type="varchar"></sql>
</field>
<field name="number" xml="nummber" />
<sql name="number" type="varchar"></sql>
</field>
</class>

</mapping>

My xml file:

<?xml version="1.0" standalone="yes"?>
<person>
<fullname>John Doe</fullname>
<tel type="home" number="6311234567" />
<tel type="fax" number="3611122334" />
</person>

Any help would be appriciated.

Thanks,
Amy



Reply via email to