Hi Thomas, I roughly have the same problems, but slightly different senario. The child object is actually already in the database. I want to insert the parent object into the database, whereas update some field in the child object (The child record actually is there in database). How should I do it in ODMG api?
Thanks >-----Original Message----- >From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] >Sent: 12 June 2003 14:17 >To: OJB Users List >Subject: Re: 1:m relation not updating > > >Hi again Shane > >Shane Mingins wrote: >> Hi Thomas >> >> These are probably going to be "dumb" questions but I cannot find >> answers anywhere. [The mail list archive is so frustrating to use.] >> >> 1. How do I lock 'b' elements from a collection using the ODMG API? > >tx.lock(b, Transaction.WRITE); > >> >> 2. Can I double check regarding the collection-descriptor >> auto-retrieve/update/delete that in the Advanced O/R is states: >> >> "These default settings are mandatory for proper operation >of the ODMG >> and JDO implementation." >> >> that this means accept the defaults when using ODMG? (I get errors >> when I set auto-update="true", but when using >deletePersistent(obj) I >> found setting auto-delete="true" removed the 'b' elements >but when not >> set the 'b' elements remained persisted. > >The above statement is really true don't use auto-update="true" and >auto-delete="true" in ODMG. >Setting them to true results in double execution of updates >and deletes >which agains results in the execptions you see. > >To delete B instance b use Database.deletePersistent(b); > > >> >> 3. As DList is abstract what would I use in a model object to store >> 'b' elements? I see where the Implementation object can >create a new >> DList >> odmg.newDList() ???? > >In your object you can type the attribute as DList. >In the repository you have to declare the collection type as >o.a.ojb.odmg.collections.DListImpl. >odmg.newDList() instantiates a DListImpl. >using this factory method is the ODMG way to instantiate a DList. > >cheers, >Thomas > >> >> Cheers >> Shane >> >> >> -----Original Message----- >> From: Thomas Mahler [mailto:[EMAIL PROTECTED] >> Sent: Wednesday, 11 June 2003 5:51 p.m. >> To: OJB Users List >> Subject: Re: 1:m relation not updating >> >> You have to lock the b elements too if you are using normal >> collections >> to hold the many-side of the association. >> >> If you were using DList as your collection class this won't be >> required. >> >> cheers, >> thomas >> >> Saman Ghodsian wrote: >> >>>Hi there, >>> >>>Here is the situation...... Say I have class A and class B 1----->m >>> >>>I created the repository.xml >>> >>>Everything works fine when storing A to DB with a couple of B's >>> >>>Tx.lock(a, Transaction.WRITE); >>>Tx.Commit >>> >>> >>>Next step is to load a and add more B's and then save it again..... >>> >>>I created the query..... And all a and the related B's get loaded >>>ok.... >>> >>>Now I add a couple more B's >>>And store a >>> >>> >>>Tx.lock(a, Transaction.WRITE); >>>Also tried >>>Tx.lock(a, Transaction.UPGRADE); >>> >>>But the new B's don't get inserted in DB..... >>>Any ideas???? >>> >>>Thanks >>> >>> >>> >>>Sam >>> >>> >>>--------------------------------------------------------------------- >>>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] >> >> > > >--------------------------------------------------------------------- >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]
