Hi Dima,

I wrote a test based on your example and get the same exception. Thanks for point that out.

regards,
Armin

Sakovsky, Dmytro wrote:
Sorry, this time I am just putting everethying into the message

Hi!
I recently posted the same problem on OJB bug list but did not have a
chance to provide all needed
information on time. Issue #OJB-21. I am attaching all the sources I
have with the exception.
Description Not possible to retrieve(possible update) collections of objects with
inheritance. Collection consist of derived type of object( not base).
The result exception says that foreign key field not found in derived
object(true, because it is in base). Tried with extensions, anonymous
etc.


Thanks
Dima


<!--DOCTYPE descriptor-repository PUBLIC
       "-//Apache Software Foundation//DTD OJB Repository//EN"
       "http://db.apache.org/ojb/dtds/1.0/repository.dtd"-->

<descriptor-repository version="1.0"
                       isolation-level="read-uncommitted"
                       proxy-prefetching-limit="50">




<!-- class --> <class-descriptor class="KeyIndicatorAggChart" table="XSL_RPT_KI_AGG_CHART_T" >

      <field-descriptor
         name="id"
         column="ID"
         jdbc-type="INTEGER"
         primarykey="true"
         autoincrement="true"
         sequence-name="XSL_RPT_ASSOC_OBJ_ID_SEQ"
         access="anonymous"
      />
      <field-descriptor
         name="chartID"
         column="CHART_ID"
         jdbc-type="INTEGER"
      />

   </class-descriptor>

   <!-- class -->
   <class-descriptor
          class="KeyIndicatorCondChart"
          table="XSL_RPT_KI_COND_CHART_T"
   >
      <field-descriptor
         name="id"
         column="ID"
         jdbc-type="INTEGER"
         primarykey="true"
         autoincrement="true"
         sequence-name="XSL_RPT_ASSOC_OBJ_ID_SEQ"
         access="anonymous"
      />
      <reference-descriptor
                name="super"
                class-ref="KeyIndicatorAggChart"
                auto-retrieve="true"
                auto-update="true"
                auto-delete="true"
      >
                <foreignkey field-ref="id"/>
          </reference-descriptor>

   </class-descriptor>

   <!-- class -->
   <class-descriptor
          class="ObjectGroupAnalysisChart"
          table="XSL_RPT_OBJ_GROUP_ANL_CHART_T"
   >
      <field-descriptor
         name="id"
         column="ID"
         jdbc-type="INTEGER"
         primarykey="true"
         autoincrement="true"
         sequence-name="XSL_ADM_SEQ"
      />


<collection-descriptor name="keyIndicators" element-class-ref="KeyIndicatorCondChart" auto-retrieve="true" auto-update="none" auto-delete="true"> <inverse-foreignkey field-ref="chartID"/> </collection-descriptor>

   </class-descriptor>

</descriptor-repository>


(metadata.RepositoryPersistor 178 ) Read class descriptors took 90 ms (core.PersistenceBrokerFactoryDefaultImpl 74 ) Create PersistenceBroker instanc e pool, pool configuration was {whenExhaustedAction=0, maxIdle=-1, maxActive=100 , maxWait=2000, removeAbandoned=false, numTestsPerEvictionRun=10, testWhileIdle= false, minEvictableIdleTimeMillis=1000000, testOnReturn=false, logAbandoned=fals e, removeAbandonedTimeout=300, timeBetweenEvictionRunsMillis=-1, testOnBorrow=fa lse} (core.PersistenceBrokerFactoryBaseImpl 92 ) Create new PB instance for PBKey or g.apache.ojb.broker.PBKey: jcdAlias=pooled, user=void, password=*****, already c reated persistence broker instances: 0 DBConnection Pool @(#)$Id: DBConnectionPool.java,v 6.24 2004/08/24 18:47:13 mmak sin Exp $(cache.ObjectCacheFactory 65 ) Start creating new ObjectCac he instance (cache.ObjectCacheFactory 86 ) Default ObjectCache class was org.apa che.ojb.broker.cache.ObjectCacheEmptyImpl (cache.CacheDistributor 82 ) Use property 'descriptorBasedCaches' is set 'false' (cache.ObjectCacheFactory 88 ) Instantiate new org.apache.ojb.broker .cache.CacheDistributor class object (cache.ObjectCacheFactory 119 ) New ObjectCache instance was created

org.apache.ojb.broker.OJBRuntimeException: Incorrect or not found field
referenc
e name 'chartID' in descriptor
org.apache.ojb.broker.metadata.CollectionDescript
[EMAIL PROTECTED],cascade_store=none,cascade_delete=object,is_
lazy
=false,class_of_Items=class KeyIndicatorCondChart] for class-descriptor 'KeyIndicatorCondChart'
at
org.apache.ojb.broker.metadata.ObjectReferenceDescriptor.getForeignKeyFieldD
escriptors(ObjectReferenceDescriptor.java:131)
at
org.apache.ojb.broker.core.QueryReferenceBroker.getFKQuery1toN(QueryReferenc
eBroker.java:697)
at
org.apache.ojb.broker.core.QueryReferenceBroker.getFKQuery(QueryReferenceBro
ker.java:630)
at
org.apache.ojb.broker.core.QueryReferenceBroker.retrieveCollection(QueryRefe
renceBroker.java:561)
at
org.apache.ojb.broker.core.QueryReferenceBroker.retrieveCollections(QueryRef
erenceBroker.java:748)
at
org.apache.ojb.broker.core.PersistenceBrokerImpl.getDBObject(PersistenceBrok
erImpl.java:1303)
at
org.apache.ojb.broker.core.PersistenceBrokerImpl.doGetObjectByIdentity(Persi
stenceBrokerImpl.java:1367)
at
org.apache.ojb.broker.core.PersistenceBrokerImpl.getObjectByIdentity(Persist
enceBrokerImpl.java:1346)
at
org.apache.ojb.broker.core.DelegatingPersistenceBroker.getObjectByIdentity(D
elegatingPersistenceBroker.java:312)
at
org.apache.ojb.broker.core.DelegatingPersistenceBroker.getObjectByIdentity(D
elegatingPersistenceBroker.java:312)
at com.telcordia.xsl.test.scheduler.OJBTest.testBroker(OJBTest.java)
at com.telcordia.xsl.test.scheduler.OJBTest.main(OJBTest.java)


---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]




--------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]



Reply via email to