Hi Alexander,
I tried your suggestion. With the "addPrefetchedRelationship()"method all
elements of the relationship are loaded. The filter criteria, here, is a
condition to retrieve the A object. In fact it's the right behaviour for
this request.
The problem is to realize a kind of left outer join in OOP to get the
Collection of B which belong to A.
In fact I use the A data to find some B elements. Now I think to load a
filtered relationship is not very good idea.
As a last resort I can use the sqlStatement but I loose the transparency of
the persistence.
Thanks
Gildas
----- Original Message -----
From: "Maksimenko Alexander" <[EMAIL PROTECTED]>
To: "OJB Users List" <[EMAIL PROTECTED]>
Sent: Wednesday, October 27, 2004 2:25 PM
Subject: Re: collection loading and filtering
did you try query.addPrefetchedRelationship("elements") ?
>Hi all,
>
>I have un object A referencing � collection with B elements.
>
>A has an attribute 'name' and a relation 'elements', B has an attribute
>'filter'.
>
>I want to load elements where name='xxx' and filter='yyy'.
>
>I use the PersitenceBroker API, here is my request:
>
> criteria = new Criteria();
>
> criteria.addEqualTo("name", 'xxx');
> criteria.addEqualTo("elements.filter", 'yyy');
>
> query = QueryFactory.newQuery(A.class, criteria);
>
> A a = (A)broker.getObjectByQuery(query);
>
>With the relationship auto-retrieve=true all elements are loaded!
>
>If auto-retrieve=false the relationship is not loaded.
>
>Is there a solution ?
>
>
>Thanks
>
>Gildas
>
>---------------------------------------------------------------------
>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]