The source generator binding files, used to help control the source
generation, are not the same as the runtime mapping files that are used
in the marshalling/unmarshalling framework.

Please see here for more details:

http://castor.exolab.org/sourcegen.html#Binding-File

--Keith


bjsp wrote:
> 
> Additional Information:
> This time I tried to generate Java source using the mapping xml. The
> same error appears here too. I suspect there is something wrong in the
> mapping file. Please help. Thanks...
> 
> C:\ben\jasper>java org.exolab.castor.builder.SourceGenerator -i
> jasper.xsd -binding-file jasperMapp
> ing.xml
> --Unable to load a binding file due to the following Exception:
> --------------------------------
> Stack Trace for :org.xml.sax.SAXException: unable to find
> FieldDescriptor for 'class' in ClassDescr
> iptor of binding{file: file:///C:/ben/jasper/jasperMapping.xml; line: 2;
> column: 32}
> org.xml.sax.SAXException: unable to find FieldDescriptor for 'class' in
> ClassDescriptor of binding
>          at
> org.exolab.castor.xml.UnmarshalHandler.startElement(UnmarshalHandler.java:1127)
>          at
> org.apache.xerces.parsers.SAXParser.startElement(SAXParser.java:1340)
>          at
> org.apache.xerces.validators.common.XMLValidator.callStartElement(XMLValidator.java:1284
> )
>          at
> org.apache.xerces.framework.XMLDocumentScanner.scanElement(XMLDocumentScanner.java:1812)
> 
>          at
> org.apache.xerces.framework.XMLDocumentScanner$ContentDispatcher.dispatch(XMLDocumentSca
> nner.java:1188)
>          at
> org.apache.xerces.framework.XMLDocumentScanner.parseSome(XMLDocumentScanner.java:387)
>          at org.apache.xerces.framework.XMLParser.parse(XMLParser.java:1099)
>          at
> org.exolab.castor.xml.Unmarshaller.unmarshal(Unmarshaller.java:555)
>          at
> org.exolab.castor.builder.binding.BindingLoader.loadBinding(BindingLoader.java:130)
>          at
> org.exolab.castor.builder.binding.BindingLoader.createBinding(BindingLoader.java:250)
>          at
> org.exolab.castor.builder.SourceGenerator.main(SourceGenerator.java:1121)
> --------------------------------
> org.xml.sax.SAXException: unable to find FieldDescriptor for 'class' in
> ClassDescriptor of binding{
> file: file:///C:/ben/jasper/jasperMapping.xml; line: 2; column: 32}
>          at
> org.exolab.castor.builder.binding.BindingLoader.loadBinding(BindingLoader.java:196)
>          at
> org.exolab.castor.builder.binding.BindingLoader.createBinding(BindingLoader.java:250)
>          at
> org.exolab.castor.builder.SourceGenerator.main(SourceGenerator.java:1121)
> -- No binding file will be used
> 
> -----Original Message-----
> From: bjsp [mailto:[EMAIL PROTECTED]
> Sent: Friday, February 27, 2004 10:52 AM
> To: [EMAIL PROTECTED]
> Subject: [castor-dev] unable to find FieldDescriptor error
> 
> Hi,
>    I am getting unable to find FieldDescriptor error. I am using
> castor-0.9.4.3-xml.jar. Attached is the error and the mapping file. This
> mapping file is autogenerated using Castor source code generator and
> mapping tool. Any help would be highly appreciated. Thanks in advance.
> 
> Mapping [EMAIL PROTECTED]
> unmarClass [EMAIL PROTECTED]
> org.xml.sax.SAXException: unable to find FieldDescriptor for
> 'courseAccess' in ClassDescriptor of jasperScore
>         at
> org.exolab.castor.xml.UnmarshalHandler.startElement(UnmarshalHandler.java:1127)
>         at org.apache.xerces.parsers.SAXParser.startElement(SAXParser.java:1340)
>         at
> org.apache.xerces.validators.common.XMLValidator.callStartElement(XMLValidator.java:1284)
>         at
> org.apache.xerces.framework.XMLDocumentScanner.scanElement(XMLDocumentScanner.java:1812)
>         at
> org.apache.xerces.framework.XMLDocumentScanner$ContentDispatcher.dispatch(XMLDocumentScanner.java:1188)
>         at
> org.apache.xerces.framework.XMLDocumentScanner.parseSome(XMLDocumentScanner.java:387)
>         at org.apache.xerces.framework.XMLParser.parse(XMLParser.java:1099)
>         at org.exolab.castor.xml.Unmarshaller.unmarshal(Unmarshaller.java:555)
>         at org.exolab.castor.xml.Unmarshaller.unmarshal(Unmarshaller.java:487)
>         at com.intellij.rt.execution.application.AppMain.main(Unknown Source)
> Process terminated with exit code 0
> 
> Mapping File:
> -------------------
> <mapping xmlns="http://castor.exolab.org/";
> xmlns:cst="http://castor.exolab.org/";>
>         <description>Castor generated mapping file</description>
>         <class cst:name="JasperScore">
>                 <description>Default mapping for class JasperScore</description>
>                 <map-to cst:xml="jasperScore"/>
>                 <field cst:name="items" cst:type="JasperScoreItem"
> cst:collection="enumerate" get-method="enumerateJasperScoreItem">
>                         <bind-xml node="element"/>
>                 </field>
>         </class>
>         <class cst:name="JasperScoreItem">
>                 <description>Default mapping for class JasperScoreItem</description>
>                 <map-to cst:xml="jasperScore"/>
>                 <field cst:name="courseAccess" cst:type="CourseAccess">
>                         <bind-xml name="courseAccess" node="element"/>
>                 </field>
>         </class>
>         <class cst:name="CourseAccess">
>                 <description>Default mapping for class CourseAccess</description>
>                 <map-to cst:xml="courseAccess"/>
>                 <field cst:name="id" cst:type="java.lang.String" cst:required="true">
>                         <bind-xml name="id" node="attribute"/>
>                 </field>
>                 <field cst:name="status" cst:type="java.lang.String" 
> cst:required="true">
>                         <bind-xml name="status" node="attribute"/>
>                 </field>
>                 <field cst:name="items" cst:type="CourseAccessItem"
> cst:collection="enumerate" get-method="enumerateCourseAccessItem">
>                         <bind-xml node="element"/>
>                 </field>
>         </class>
>         <class cst:name="CourseAccessItem">
>                 <description>Default mapping for class CourseAccessItem</description>
>                 <map-to cst:xml="courseAccess"/>
>                 <field cst:name="test" cst:type="Test">
>                         <bind-xml name="test" node="element"/>
>                 </field>
>         </class>
>         <class cst:name="Test">
>                 <description>Default mapping for class Test</description>
>                 <map-to cst:xml="test"/>
>                 <field cst:name="assetCode" cst:type="java.lang.String"
> cst:required="true">
>                         <bind-xml name="assetCode" node="attribute"/>
>                 </field>
>                 <field cst:name="scores" cst:type="Scores" cst:collection="array">
>                         <bind-xml name="scores" node="element"/>
>                 </field>
>                 <field cst:name="status" cst:type="java.lang.String">
>                         <bind-xml name="status" node="element"/>
>                 </field>
>                 <field cst:name="dateCreated" cst:type="java.lang.String">
>                         <bind-xml name="dateCreated" node="element"/>
>                 </field>
>                 <field cst:name="dateCompleted" cst:type="java.lang.String">
>                         <bind-xml name="dateCompleted" node="element"/>
>                 </field>
>         </class>
>         <class cst:name="Scores">
>                 <description>Default mapping for class Scores</description>
>                 <map-to cst:xml="scores"/>
>                 <field cst:name="items" cst:type="ScoresItem"
> cst:collection="enumerate" get-method="enumerateScoresItem">
>                         <bind-xml node="element"/>
>                 </field>
>         </class>
>         <class cst:name="ScoresItem">
>                 <description>Default mapping for class ScoresItem</description>
>                 <map-to cst:xml="scores"/>
>                 <field cst:name="score" cst:type="Score">
>                         <bind-xml name="score" node="element"/>
>                 </field>
>         </class>
>         <class cst:name="Score">
>                 <description>Default mapping for class Score</description>
>                 <map-to cst:xml="score"/>
>                 <field cst:name="name" cst:type="java.lang.String" 
> cst:required="true">
>                         <bind-xml name="name" node="attribute"/>
>                 </field>
>                 <field cst:name="value" cst:type="java.lang.String" 
> cst:required="true">
>                         <bind-xml name="value" node="attribute"/>
>                 </field>
>         </class>
> </mapping>
> 
> -----------------------------------------------------------
> If you wish to unsubscribe from this mailing, send mail to
> [EMAIL PROTECTED] with a subject of:
>          unsubscribe castor-dev
> 
> -----------------------------------------------------------
> If you wish to unsubscribe from this mailing, send mail to
> [EMAIL PROTECTED] with a subject of:
>         unsubscribe castor-dev

----------------------------------------------------------- 
If you wish to unsubscribe from this mailing, send mail to
[EMAIL PROTECTED] with a subject of:
        unsubscribe castor-dev

Reply via email to