Hello evrybody,
I have a problem with my OJB implementation. I have the following metadata
mapping with the corresponding classmodel.
<class-descriptor
class="basis.Model"
table="models"
identity-type="datastore">
<field-descriptor
name="id"
column="id"
jdbc-type="BIGINT"
primarykey="true"
autoincrement="true"
/>
<reference-descriptor
name="modelItem"
class-ref="basis.ModelItem"
auto-retrieve="true"
auto-update="true"
auto-delete="true"
>
<foreignkey field-ref="modelItemId"/>
</reference-descriptor>
</class-descriptor>
<class-descriptor
class="basis.ModelI18N"
table="models_i18n"
identity-type="datastore">
<field-descriptor
name="id"
column="id"
jdbc-type="BIGINT"
primarykey="true"
autoincrement="true"
/>
<field-descriptor
name="ownerId"
column="model_id"
jdbc-type="BIGINT"
/>
<field-descriptor
name="nationId"
primarykey="true"
column="nation_id"
jdbc-type="BIGINT"
/>
<reference-descriptor
name="owner"
class-ref="basis.Model"
auto-retrieve="true"
auto-update="true"
>
<foreignkey field-ref="ownerId"/>
</reference-descriptor>
<reference-descriptor
name="nationality"
class-ref="basis.Nationality"
auto-retrieve="true"
>
<foreignkey field-ref="nationId"/>
</reference-descriptor>
</class-descriptor>
<class-descriptor
class="basis.ModelItem"
proxy="dynamic"
table="modelitems"
identity-type="datastore">
<field-descriptor
name="id"
column="id"
jdbc-type="BIGINT"
primarykey="true"
autoincrement="true"
/>
<field-descriptor
name="modelId"
column="model_id"
jdbc-type="BIGINT"
/>
<field-descriptor
name="itemHierarchy"
column="item_hierarchy"
jdbc-type="BIGINT"
/>
<collection-descriptor
name="modelItemsI18N"
element-class-ref="basis.ModelItemI18N"
orderby="id"
sort="asc"
auto-retrieve="true"
auto-update="true"
auto-delete="true"
>
<inverse-foreignkey field-ref="ownerId"/>
</collection-descriptor>
<reference-descriptor
name="parent"
class-ref="basis.ModelItem"
auto-retrieve="true"
auto-update="true"
>
<foreignkey field-ref="itemHierarchy"/>
</reference-descriptor>
<reference-descriptor
name="model"
class-ref="basis.Model"
auto-retrieve="true"
auto-update="true"
>
<foreignkey field-ref="modelId"/>
</reference-descriptor>
<collection-descriptor
name="children"
element-class-ref="basis.ModelItem"
orderby="id"
sort="asc"
auto-retrieve="true"
auto-update="true"
auto-delete="true"
>
<inverse-foreignkey field-ref="itemHierarchy"/>
</collection-descriptor>
</class-descriptor>
<class-descriptor
class="basis.ModelItemI18N"
proxy="dynamic"
table="modelitems_i18n"
identity-type="datastore">
<field-descriptor
name="id"
column="id"
jdbc-type="BIGINT"
primarykey="true"
autoincrement="true"
/>
<field-descriptor
name="nationId"
column="nation_id"
jdbc-type="BIGINT"
/>
<field-descriptor
name="header"
column="header"
jdbc-type="VARCHAR"
/>
<field-descriptor
name="author"
column="author"
jdbc-type="VARCHAR"
/>
<field-descriptor
name="ownerId"
column="item_id"
jdbc-type="BIGINT"
/>
<field-descriptor
name="changedAt"
column="changed_at"
jdbc-type="DATE"
/>
<field-descriptor
name="textId"
column="text_id"
jdbc-type="BIGINT"
/>
<field-descriptor
name="processId"
column="process_id"
jdbc-type="BIGINT"
/>
<reference-descriptor
name="nationality"
class-ref="basis.Nationality"
auto-retrieve="true"
>
<foreignkey field-ref="nationId"/>
</reference-descriptor>
<reference-descriptor
name="item"
class-ref="basis.ModelItem"
auto-retrieve="true"
>
<foreignkey field-ref="ownerId"/>
</reference-descriptor>
</class-descriptor>
My 'modelItems' have a hierarchical structure. Each modelitem knows his
parent and holds a collection of its children.
Because I don not want to read all modelitems at one time, I have
implemented this class as a proxy-class(see datamapping). This means,
the ojb implementation should only fill the respective modelitems when
I hold a reference of it.
It works fine in the JUnitTest I have written. I display this hierarchy
in a jtree, using the DefaultMutableTreeNode which contains the
modelitems as userObjects. When I additionally try to expand the tree,
the ojb implementation is not able to resolve the proxyObjects to
real-objects. Therefore it is not possible to display the
objecthierarchy in a jtree.
Thanks for helping me
J�rn Ziemke
The error message is :
Used ConnectionManager instance could not obtain a connection: Could not borrow
connection from pool - org.apache.ojb.broker.metadata.JdbcConnectionDescriptor: [EMAIL
PROTECTED]
jcd-alias=oracle
default-connection=true
dbms=Oracle
jdbc-level=1.0
driver=oracle.jdbc.driver.OracleDriver
protocol=jdbc
sub-protocol=oracle
db-alias=thin:@apl.hoppe.de:1526:devB
user=jziemke
password=*****
eager-release=false
ConnectionPoolDescriptor={whenExhaustedAction=0, validationQuery=select count(*) from
models, maxIdle=-1, maxActive=1, maxWait=5000, removeAbandoned=false,
numTestsPerEvictionRun=10, testWhileIdle=false, minEvictableIdleTimeMillis=600000,
testOnReturn=false, logAbandoned=false, removeAbandonedTimeout=300,
timeBetweenEvictionRunsMillis=-1, testOnBorrow=true}
batchMode=false
useAutoCommit=AUTO_COMMIT_SET_TRUE_AND_TEMPORARY_FALSE
ignoreAutoCommitExceptions=false
[EMAIL PROTECTED]
sequenceManagerClass=class h3.gen.H3SequenceManager
Properties={}
]
]
[org.apache.ojb.broker.accesslayer.IndirectionHandler] ERROR: Method invoking failed
for method *getModelItemI18NByNationality* on object null
Used ConnectionManager instance could not obtain a connection: Could not borrow
connection from pool - org.apache.ojb.broker.metadata.JdbcConnectionDescriptor: [EMAIL
PROTECTED]
jcd-alias=oracle
default-connection=true
dbms=Oracle
jdbc-level=1.0
driver=oracle.jdbc.driver.OracleDriver
protocol=jdbc
sub-protocol=oracle
db-alias=thin:@apl.hoppe.de:1526:devB
user=jziemke
password=*****
eager-release=false
ConnectionPoolDescriptor={whenExhaustedAction=0, validationQuery=select count(*) from
models, maxIdle=-1, maxActive=1, maxWait=5000, removeAbandoned=false,
numTestsPerEvictionRun=10, testWhileIdle=false, minEvictableIdleTimeMillis=600000,
testOnReturn=false, logAbandoned=false, removeAbandonedTimeout=300,
timeBetweenEvictionRunsMillis=-1, testOnBorrow=true}
batchMode=false
useAutoCommit=AUTO_COMMIT_SET_TRUE_AND_TEMPORARY_FALSE
ignoreAutoCommitExceptions=false
[EMAIL PROTECTED]
sequenceManagerClass=class h3.gen.H3SequenceManager
Properties={}
]
]
[org.apache.ojb.broker.accesslayer.IndirectionHandler] ERROR: Method invoking failed
for method *getModelItemI18NByNationality* on object unmaterialized proxy for
h3.shadow.ModelItem{780730107476194}
null
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]