hi armin,
is this testcase already available ?
Will check in the test ASAP. Currently do a complete refactoring of the "each super class on different table" mapping, so I use this test case only local.
Armin
jakob
Armin Waibel schrieb:
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]
--------------------------------------------------------------------- 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]
