Others may have a different take on this, but in my experience you are best
served not using Castor's concept of long transactions.  

Thats just an opinion.

However, as for your issue:

I am guessing you are trying to persist AccountK, which has a reference to
AccountA.  In a long transaction, what you need to do is to make sure all
objects (including referenced objects) are "persistable".  Generally this is
done by calling db.update() on all referenced objects.

So say you are trying to update AccountK; you would need to do the
following:

Database db = ...
db.begin();
db.update( AccountA );
db.update( AccountK );
db.commit();
db.close();

Note that if AccountA and/or AccountK reference other objects, you will need
to call db.update on them also...



********************************************
Steve Ebersole
IT Integration Engineer
Vignette Corporation 
512.741.4195

Visit http://www.vignette.com

********************************************


-----Original Message-----
From: Fabricio Matheus Goncalves [mailto:[EMAIL PROTECTED]]
Sent: Thursday, April 18, 2002 3:30 PM
To: [EMAIL PROTECTED]
Subject: [castor-dev] long-transaction


Hi, 

Im trying to do almost the same described at
http://castor.exolab.org/long-transact.html
If it help, I have a Account Tree, where AccountA
is the root, and AccountK is a ChildNode.

Could you help or point me to documentation references on this?

org.exolab.castor.jdo.PersistenceException: Object,  [ AccountK ] ,
links to another object,  [ AccountA ]  that is not
loaded/updated/created in this transaction

Thanks!

----------------------------------------------------------- 
If you wish to unsubscribe from this mailing, send mail to
[EMAIL PROTECTED] with a subject of:
        unsubscribe castor-dev

----------------------------------------------------------- 
If you wish to unsubscribe from this mailing, send mail to
[EMAIL PROTECTED] with a subject of:
        unsubscribe castor-dev

Reply via email to