Hello
There is a problem on the MtoNCollectionPrefetcher .
Description :
Input a MtoN relation in an Oracle database
All the ids are SQL NUMBER and are declared as BIGINT in the repository.xml.
The problem is that the Prefetecher use a ReportQuery in the method
prefetchRelationship but use the class descriptor ( in the associateBatched
method ) for generating identity .
Identity on Object A using the ReportQuery : 2 BigInteger ( using
the JdbcTypesHelper and the MetaDatas of the statement )
Identity on Object A using the ClassDescriptor : 2 Long
The equal method of the identity return false even with the same ids
... So access to the maps childMap and ownerIdsToLists ( in associateBatched
) cause NPE because returning null values .
I think may be the mapping of the good type of the ReportQuery result is
missing ???
Here is a part of the stack :
org.apache.ojb.broker.accesslayer.MtoNCollectionPrefetcher.associateBatched(
MtoNCollectionPrefetcher.java:363)
at
org.apache.ojb.broker.accesslayer.MtoNCollectionPrefetcher.prefetchRelations
hip(MtoNCollectionPrefetcher.java:126)
at
org.apache.ojb.broker.core.QueryReferenceBroker$PBPrefetchingListener.prefet
ch(QueryReferenceBroker.java:837)
at
org.apache.ojb.broker.core.QueryReferenceBroker$PBCollectionProxyListener.be
foreLoading(QueryReferenceBroker.java:894)
at
org.apache.ojb.broker.accesslayer.CollectionProxy.beforeLoading(CollectionPr
oxy.java:173)
at
org.apache.ojb.broker.accesslayer.CollectionProxy.getData(CollectionProxy.ja
va:400)
at
org.apache.ojb.broker.accesslayer.CollectionProxy.iterator(CollectionProxy.j
ava:230)
B.R
Thierry
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]