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]