Hi Werner,
before creating a Jira issue I want to be sure whether I did all correct and that it is really a bug. It is that I need the functionality as soon as possible and I think it will take a quite long time for resolving the issue. For this reason I give you exactly the data of my simple test case, plain in this mail. It would be interesting whether you can reproduce the failure: The data: ########## XML-Schema ##################### ########################################### <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" attributeFormDefault="unqualified"> <xs:element name="oneElement"> <xs:complexType/> </xs:element> <xs:element name="otherElement"> <xs:complexType/> </xs:element> </xs:schema> ######################################## ######################################## ########## Binding file ################ ######################################## <?xml version="1.0" encoding="ISO-8859-1"?> <binding defaultBindingType="type"> <package> <name>castorgen</name> <namespace></namespace> </package> <elementBinding name="oneElement"> <java-class name="OneElementXml"/> </elementBinding> <elementBinding name="otherElement"> <java-class name="OtherElementXml"/> </elementBinding> </binding> ######################################## ######################################## ########## exampleXml ################## ######################################## <?xml version="1.0" encoding="ISO-8859-1"?> <oneElement> </oneElement> ######################################## ######################################## The call to Unmarshaller producing the exception: ######################################## ######################################## Reader source = new FileReader(exampleXml); Unmarshaller unm = new Unmarshaller(); Object o = unm.unmarshal(source); ######################################## ######################################## The used java libraries are listed below. Best Regards /Roman Werner Guttmann schrieb: > Sorry, Roman, but no attachments to any of the mailing lists, as there's > no guarantee that they arrive at the other end. > > As already suggested, can you please create a new Jira issue and attach > your files ? > > Regards > Werner > > Roman Klaehne wrote: >> Hi Werner, >> >> >> in the attachment you will find a very simple Eclipse project, containing >> >> (i) a simple XML Schema (in xml-schema/) >> >> (ii) a binding file for the schema (in xml-schema/castor-bindings) >> >> (iii) the generated class files (in lib/castorgen.jar) >> >> (iv) a simple class castor.test.Test (in src/) >> >> (v) two xml instances in (xml-instances/) >> >> (vi) an ant build file containing the tasks for generating the java >> sources and for compiling the Test class. >> >> The following libraries has to be on the classpath (see .classpath) and >> are not included in the attached ZIP file: >> >> ant-contrib.jar >> castor-1.2-anttasks.jar >> castor-1.2-codegen.jar >> castor-1.2.jar >> castor-1.2-xml.jar >> castor-1.2-xml-schema.jar >> commons-logging.jar >> serializer.jar >> velocity-dep.jar >> xalan-2.7.0.jar >> xercesImpl.jar >> xml-apis.jar >> >> When running the test class (specifying an xml instance, e.g., >> xml-instances/oneElement.xml) the following exception occurs: >> >> Exception in thread "main" org.exolab.castor.xml.MarshalException: The >> class for the root element 'oneElement' could not be found.{File: [not >> available]; line: 2; column: 13} >> at >> org.exolab.castor.xml.Unmarshaller.convertSAXExceptionToMarshalException(Unmarshaller.java:761) >> at org.exolab.castor.xml.Unmarshaller.unmarshal(Unmarshaller.java:727) >> at org.exolab.castor.xml.Unmarshaller.unmarshal(Unmarshaller.java:616) >> at castor.test.Test.main(Test.java:23) >> Caused by: org.xml.sax.SAXException: The class for the root element >> 'oneElement' could not be found. >> at >> org.exolab.castor.xml.UnmarshalHandler.startElement(UnmarshalHandler.java:1589) >> ..................... >> >> What is going wrong? >> >> >> Best Regards! >> /Roman >> >> >> >> >> >> >> Werner Guttmann schrieb: >>> Roman, >>> >>> a test case attached to a Jira issue. I don't see a reason why this does >>> not work. Can you as such please create an issue at >>> >>> http://jira.codehaus.org/browse/CASTOR >>> >>> and attach a fully working test case. If you are using Maven, there's an >>> archetype available to assist you with this (as documented at >>> http://castor.org/maven-archetypes.html). >>> >>> Regards >>> Werner >>> >>> Roman Klaehne wrote: >>>> Hi Werner, >>>> >>>>> that should work out of the box. >>>> This sounds good. I also thought that it should work. >>>> >>>>> When you used the XML code generator to >>>>> generate the Java classes from your XML schema, it produced (so-called) >>>>> descriptor classes as well. Did you compile those as well, and are these >>>>> available on your classpath as well ? >>>> Yes, the descriptor classes are generated and all generated classes are >>>> on the classpath. >>>> >>>> As I said the following code works fine: >>>> >>>> *************************************************** >>>> Unmarshaller u = new Unmarshaller(RootXml.class) >>>> Object o = u.unmarshal(reader) >>>> *************************************************** >>>> >>>> But if I instantiate the Unmarshaller without a "root class" argument >>>> (using the empty constructor), the error message >>>> >>>> "The class for the root element 'root' could not be found." >>>> >>>> arises. >>>> >>>> My XML-Schema also have a namespace. I don't know whether this is >>>> important. But my XML sources have a the same namespace of course. >>>> >>>> What more information you need to analyze this matter? >>>> >>>> >>>> All the best >>>> /roman >>>> >>>> >>>> >>>> >>>> >>>> >>>>> Regards >>>>> Werner Guttmann >>>>> >>>>> Roman Klaehne wrote: >>>>>> Hi, >>>>>> >>>>>> >>>>>> I am using the Castor Source Code Generator together with Castor >>>>>> Unmarshaller. >>>>>> >>>>>> For the simple XML schema: >>>>>> >>>>>> ******************************************************************* >>>>>> <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" >>>>>> elementFormDefault="qualified" attributeFormDefault="unqualified"> >>>>>> <xs:element name="root"/> >>>>>> <xs:element name="element"/> >>>>>> </xs:schema> >>>>>> ******************************************************************* >>>>>> >>>>>> I have such a binding file: >>>>>> >>>>>> ************************************************** >>>>>> <binding defaultBindingType="type"> >>>>>> <elementBinding name="root"> >>>>>> <java-class name="RootXml"/> >>>>>> </elementBinding> >>>>>> <elementBinding name="element"> >>>>>> <java-class name="ElementXml"/> >>>>>> </elementBinding> >>>>>> </binding> >>>>>> ************************************************** >>>>>> >>>>>> After generating the source code for the schema using the binding file >>>>>> above I want to unmarshall XML sources to the repective Java classes. >>>>>> >>>>>> When doing >>>>>> >>>>>> *************************************************** >>>>>> Unmarshaller u = new Unmarshaller(RootXml.class) >>>>>> Object o = u.unmarshal(reader) >>>>>> *************************************************** >>>>>> >>>>>> the object o is correctly unmarshalled and is an instance of class >>>>>> RootXml (as it should be). >>>>>> >>>>>> But when using the default constructor of Unmarshaller (without giving >>>>>> the root class RootXml.class) I get the following error message: >>>>>> >>>>>> "The class for the root element 'root' could not be found." >>>>>> >>>>>> My intention is to have XML documents with root elements "<root>" or >>>>>> "<element>" and when calling Unmarshaller.unmarshal() I don't know the >>>>>> type of the XML source (root or element). That means I want to do the >>>>>> following: >>>>>> >>>>>> **************************************** >>>>>> Unmarshaller u = new Unmarshaller(); >>>>>> Object o = u.unmarshal(); >>>>>> >>>>>> if(o instanceof RootXml) { >>>>>> doRoot(); >>>>>> } >>>>>> else if(o instanceof ElementXml) { >>>>>> doElement(); >>>>>> } >>>>>> **************************************** >>>>>> >>>>>> Do you have any ideas to get this working? >>>>>> >>>>>> >>>>>> Thanks in advance and best regards >>>>>> /Roman Klähne >>>>>> (ZIB Berlin) >>>>>> >>>>>> >>>>>> >>>>>> >>>>>> >>>>>> >>>>>> >>>>>> >>>>>> >>>>>> >>>>>> --------------------------------------------------------------------- >>>>>> To unsubscribe from this list, please visit: >>>>>> >>>>>> http://xircles.codehaus.org/manage_email >>>>>> >>>>>> >>>>> --------------------------------------------------------------------- >>>>> To unsubscribe from this list, please visit: >>>>> >>>>> http://xircles.codehaus.org/manage_email >>>>> >>>>> >>>> --------------------------------------------------------------------- >>>> To unsubscribe from this list, please visit: >>>> >>>> http://xircles.codehaus.org/manage_email >>>> >>>> >>> --------------------------------------------------------------------- >>> To unsubscribe from this list, please visit: >>> >>> http://xircles.codehaus.org/manage_email >>> >>> >> >> ------------------------------------------------------------------------ >> >> --------------------------------------------------------------------- >> To unsubscribe from this list, please visit: >> >> http://xircles.codehaus.org/manage_email > > --------------------------------------------------------------------- > To unsubscribe from this list, please visit: > > http://xircles.codehaus.org/manage_email > > --------------------------------------------------------------------- To unsubscribe from this list, please visit: http://xircles.codehaus.org/manage_email

