Hold on, are you saying that you are trying to upgrade from 0.6 to a more recent release ? In that case, you might be facing (regression) problems, indeed.

Let me ask you a few questions:

a) why use a mapping file at all, when the Java classes have been generated using Castor's code generator ? b) Having a member variable of type List and trying to access it as an array ... well, is odd to me.

Can you break things down to a really simple test case that does *not* reference multiple Java classes with tons of properties.

But let's first see what your answers are ..

Regards
Werner

Stromblad wrote:

Thank you for answering, Werner.

The strange fact for me is that this mapping file worked before as it is now...

That relation field is defined as follows in the class:

    private java.util.Vector relationList;

and its set/get methods are:

    public void addRelation(Lom_Relation vRelation)
        throws java.lang.IndexOutOfBoundsException
    {
        relationList.addElement(vRelation);
    } //-- void addRelation(Lom_Relation)

    public void addRelation(int index, Lom_Relation vRelation)
        throws java.lang.IndexOutOfBoundsException
    {
        relationList.insertElementAt(vRelation, index);
    } //-- void addRelation(int, Lom_Relation)

    public Lom_Relation getRelation(int index)
        throws java.lang.IndexOutOfBoundsException
    {
        //-- check bounds for index
        if ((index < 0) || (index > relationList.size())) {
throw new IndexOutOfBoundsException("getRelation: Index value '"+index+"' not in range [0.."+relationList.size()+ "]");
        }
return (Lom_Relation) relationList.elementAt(index);
    } //-- Lom_Relation getRelation(int)

    public Lom_Relation[] getRelation()
    {
        int size = relationList.size();
        Lom_Relation[] mArray = new Lom_Relation[size];
        for (int index = 0; index < size; index++) {
            mArray[index] = (Lom_Relation) relationList.elementAt(index);
        }
        return mArray;
    }

these were generated with Castor's code generator long ago (v 0.96)...


2008/2/19, Stromblad <[EMAIL PROTECTED] <mailto:[EMAIL PROTECTED]>>:

    First of all, thanks for answering.

    That package called "classes" is located in my classpath already.

    2008/2/18, Ralf Joachim <[EMAIL PROTECTED]
    <mailto:[EMAIL PROTECTED]>>:

        Hi,

        as you highlighted there is a mapping that refers to a class
        'classes.Lom_Relation' which could not be found. This field mapping
        causes castor to search for a class and a class mapping for
        'classes.Lom_Relation'. It seams castor is not able to find the
        class.

        Do you have such a class in your classpath or may the class be
        located
        in a different package?

        Regards
        Ralf


        Stromblad schrieb:
        >  Hi,
        >
        >  Thanks for answering. Actually that field you mention is
        involved in a
        >  1:N relation, as follows:
        >
        >     <class name="classes.Lom" identity="identity"
        key-generator="IDENTITY">
        >         <map-to xml="lom" table="LOM"/>
        >         <field name="identity" type="integer" get-method="getId"
        >  set-method="setId">
        >                 <sql name="LOMID"/>
        >
        >         </field>
        >         <field name="general" type="classes.Lom_General"
        >  get-method="getGeneral" set-method="setGeneral">
        >             <sql name="genID"/>
        >             <bind-xml name="general"/>
        >         </field>
        >         <field name="lifecycle" type="classes.Lom_Lifecycle"
        >  get-method="getLifecycle" set-method="setLifecycle">
        >             <sql name="lifecycleID"/>
        >             <bind-xml name="lifecycle"/>
        >         </field>
        >         <field name="metametadata" type="classes.Lom_Metametadata"
        >  get-method="getMetametadata" set-method="setMetametadata">
        >             <sql name="metametadataID"/>
        >             <bind-xml name="metametadata"/>
        >         </field>
        >         <field name="technical" type="classes.Lom_Technical"
        >  get-method="getTechnical" set-method="setTechnical">
        >             <sql name="technicalID"/>
        >             <bind-xml name="technical"/>
        >         </field>
        >         <field name="educational" type="classes.Lom_Educational"
        >  get-method="getEducational" set-method="setEducational">
        >             <sql name="educationalID"/>
        >             <bind-xml name="educational"/>
        >         </field>
        >         <field name="rights" type="classes.Lom_Rights"
        >  get-method="getRights" set-method="setRights">
        >             <sql name="rightsID"/>
        >             <bind-xml name="rights"/>
        >         </field>
        >         <field name="relationList" type="classes.Lom_Relation"
        >  collection="array" get-method="getRelation"
        set-method="setRelation">
        >             <sql many-key="LOMID"/>
        >             <bind-xml name="relation"/>
        >         </field>
        >         <field name="annotationList" type="classes.Lom_Annotation"
        >  collection="array" get-method="getAnnotation"
        set-method="setAnnotation">
        >             <sql many-key="LOMID"/>
        >             <bind-xml name="annotation"/>
        >         </field>
        >         <field name="classificationList"
        >  type="classes.Lom_Classification" collection="array"
        >  get-method="getClassification" set-method="setClassification">
        >             <sql many-key="LOMID"/>
        >             <bind-xml name="classification"/>
        >         </field>
        >         <field name="fileURL" type="java.lang.String"
        >  get-method="getFileURL" set-method="setFileURL">
        >             <sql name="fileURL"/>
        >         </field>
        >     </class>
        >
        >  Where could the problem be?
        >  Thanks in advance
        >
        >  2008/2/14, Werner Guttmann <[EMAIL PROTECTED]
        <mailto:[EMAIL PROTECTED]>
        >  <mailto:[EMAIL PROTECTED]
        <mailto:[EMAIL PROTECTED]>>>:
        >
        >     Hi,
        >
        >     it looks like the problem is NOT with the class mapping,
        but a field
        >     mapping that actually is typed against this class. Is there
        such a field
        >     mapping ?
        >
        >     Werner
        >
        >     Stromblad wrote:
        >     > Hello,
        >     >
        >     > when a piece of code written by me (a web service
        actually) tries to
        >     > load the configuration and mapping file for my
        application I get
        >     this error:
        >     >
        >     > org.exolab.castor.mapping.MappingException: Could not
        find the class
        >     > [Lclasses.Lom_Relation;
        >     >         at
        >     >
        org.exolab.castor.persist.FieldMolder.<init>(FieldMolder.java:551)
        >     >         at
        >     >
        org.exolab.castor.persist.ClassMolder.<init>(ClassMolder.java:384)
        >     >         at
        >     >
> org.exolab.castor.persist.ClassMolderHelper.resolve(ClassMolderHelper.java:58)
        >     >         at
> org.exolab.castor.persist.LockEngine.<init>(LockEngine.java:177)
        >     >         at
        >     >
> org.exolab.castor.persist.PersistenceEngineFactory.createEngine(PersistenceEngineFactory.java:77)
        >     >         at
        >     >
> org.castor.jdo.engine.AbstractConnectionFactory.initializeEngine(AbstractConnectionFactory.java:207)
        >     >         at
        >     >
> org.castor.jdo.engine.AbstractConnectionFactory.initialize(AbstractConnectionFactory.java:151)
        >     >         at
        >     >
> org.castor.jdo.engine.DatabaseRegistry.loadDatabase(DatabaseRegistry.java:177)
        >     >         at
        >     >
> org.castor.jdo.engine.DatabaseRegistry.loadDatabase(DatabaseRegistry.java:136)
        >     >         at
        >     >
> org.exolab.castor.jdo.JDOManager.loadConfiguration(JDOManager.java:317)
        >     >         at
        >     >
> org.exolab.castor.jdo.JDOManager.loadConfiguration(JDOManager.java:350)
        >     >         at db.lomDB.connect(lomDB.java:48)
        >     >         at lom.deleteFromDB.delete(deleteFromDB.java:20)
        >     >         at
        >     >
> lomService_pkg.LomServiceSoapBindingImpl.borrar(LomServiceSoapBindingImpl.java:216)
        >     >         at
        >     >
> lomService_pkg.LomServiceSoapBindingSkeleton.borrar(LomServiceSoapBindingSkeleton.java:124)
        >     >         at
        sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        >     >         at
        >     >
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
        >     >         at
        >     >
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        >     >         at java.lang.reflect.Method.invoke(Method.java:597)
        >     >         at
        >     >
> org.apache.axis.providers.java.RPCProvider.invokeMethod(RPCProvider.java:397)
        >     >         at
        >     >
> org.apache.axis.providers.java.RPCProvider.processMessage(RPCProvider.java:186)
        >     >         at
        >     >
> org.apache.axis.providers.java.JavaProvider.invoke(JavaProvider.java:323)
        >     >         at
        >     >
> org.apache.axis.strategies.InvocationStrategy.visit(InvocationStrategy.java:32)
        >     >         at
        >     org.apache.axis.SimpleChain.doVisiting(SimpleChain.java:118)
        >     >         at
        org.apache.axis.SimpleChain.invoke(SimpleChain.java:83)
        >     >         at
        >     >
        org.apache.axis.handlers.soap.SOAPService.invoke(SOAPService.java:454)
        >     >         at
        >     org.apache.axis.server.AxisServer.invoke(AxisServer.java:281)
        >     >         at
        >     >
> org.apache.axis.transport.http.AxisServlet.doPost(AxisServlet.java:699)
        >     >         at
        >     javax.servlet.http.HttpServlet.service(HttpServlet.java:710)
        >     >         at
        >     >
> org.apache.axis.transport.http.AxisServletBase.service(AxisServletBase.java:327)
        >     >         at
        >     javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
        >     >         at
        >     >
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
        >     >         at
        >     >
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
        >     >         at
        >     >
> org.netbeans.modules.web.monitor.server.MonitorFilter.doFilter(MonitorFilter.java:390)
        >     >         at
        >     >
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
        >     >         at
        >     >
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
        >     >         at
        >     >
> org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
        >     >         at
        >     >
> org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175)
        >     >         at
        >     >
> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
        >     >         at
        >     >
> org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
        >     >         at
        >     >
> org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
        >     >         at
        >     >
> org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263)
        >     >         at
        >     >
> org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844)
        >     >         at
        >     >
> org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584)
        >     >         at
        >     >
> org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
        >     >         at java.lang.Thread.run(Thread.java:619)
        >     >
        >     > In the mapping file that class classes.Lom_Relation is
        correctly
        >     defined:
        >     >
        >     > <class name="classes.Lom_Relation" identity="identity"
        >     > key-generator="IDENTITY" >
        >     >         <map-to xml="relation" table="LOM_RELATION" />
        >     > (...)
        >     > </class>
        >     >
        >     > I have that package called classes in my classpath...so i
        can't figure
        >     > out where the mistake is.
        >     > Any help would be much appreciated.
        >     >
        >     >
        >     > Thanks in advance.
        >     >
        >
        >
> ---------------------------------------------------------------------
        >     To unsubscribe from this list, please visit:
        >
        >         http://xircles.codehaus.org/manage_email
        >
        >
        >

        --

        Syscon Ingenieurbüro für Meß- und Datentechnik GmbH
        Ralf Joachim
        Raiffeisenstraße 11
        72127 Kusterdingen
        Germany

        Tel.   +49 7071 3690 52
        Mobil: +49 173 9630135
        Fax    +49 7071 3690 98

        Internet: www.syscon.eu
        E-Mail: [EMAIL PROTECTED] <mailto:[EMAIL PROTECTED]>

        Sitz der Gesellschaft: D-72127 Kusterdingen
        Registereintrag: Amtsgericht Stuttgart, HRB 382295
        Geschäftsleitung: Jens Joachim, Ralf Joachim

        ---------------------------------------------------------------------
        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


Reply via email to