Ideally, simply navigating to a related field and getting the id of that field should not trigger loading behavior, should it?

After all, you don't know exactly what fields to load until the user actually wants a field that isn't loaded. The field that triggers the database operation should influence what kind of fetch is done by the database. It sounds like this behavior should work: for non-relation fields, the current fetch plan is applied to the field’s owning instance, and the fields in the field’s load-fetch-group, plus the field itself are added to the list of fields.

Craig

On Nov 24, 2008, at 3:53 PM, Pinaki Poddar wrote:


Hi,
 Sorry for delayed response.

 Let me restate the problem to see if I understand it correctly
 1. Entity A has a one-to-one, lazily fetched relation to Entity B.
    public class A {
     @OneToOne(fetch=LAZY)
      private B b;

 2. You want to get an instance of A in memory, but not the related
instance of B. Nor you want a join between Table for A and Table for B.

3. But you should be able to access the primary field of B because OpenJPA
has fetched the value but hidden it somewhere.

I have attached a sketch of how this can be done in three attached file,
hopefully they are self-explanatory :)

http://n2.nabble.com/file/n1574366/TestFetch2.java TestFetch2.java
http://n2.nabble.com/file/n1574366/FA.java FA.java
http://n2.nabble.com/file/n1574366/FB.java FB.java

The short answer is you need to get hold of OpenJPAStateManager for A --
the proxy object that intercepts and manages the persistent state of
original A. That StateManager has the primary key of B which saves OpenJPA
another join in case the user later calls A.getB().







--
View this message in context: 
http://n2.nabble.com/Get-%40Id-field-value-%28FK%29-without-loading-entity-%28JOIN%29-when-using-FetchGroups-or-Lazy-Loading-tp1499463p1574366.html
Sent from the OpenJPA Users mailing list archive at Nabble.com.


Craig L Russell
Architect, Sun Java Enterprise System http://db.apache.org/jdo
408 276-5638 mailto:[EMAIL PROTECTED]
P.S. A good JDO? O, Gasp!

Attachment: smime.p7s
Description: S/MIME cryptographic signature

Reply via email to