Laurent SIMON wrote:
I don't speak English very well and I did not understand exactly what you
wanna say in the last paragraph... In fact, the part of the code which uses
this method isn't my work, but the person who has written it left the
society so i can't ask him for information.
I only want to explain that in specific rare situations (with specific
configuration setting) the re-introduced method #isDeleted(Identity)
return 'false' for a specified object Identity but nevertheless on
commit the object will be deleted. I don't want to confuse you, so
please ignore this hint ;-)
The study of his code would take very much time to me, and i don't speak
about the risks of regressions... It will be easy for me that you
re-introduce this method as you proposed it.
I re-introduce the method and checked in the changes in CVS 1.0.x branch
(branch is tagged as OJB_1_0_RELEASE). Please check out the
OJB_1_0_RELEASE branch (otherwise you have to wait for 1.0.4).
I strongly recommend using TransactionExt instead of TransactionImpl to
get access to #isDeleted
TransactionExt tx = (TransactionExt) odmg.newTransaction()
more info about OJB's odmg extensions:
http://db.apache.org/ojb/docu/guides/odmg-guide.html#OJB+Extensions+of+ODMG
regards,
Armin
-----Message d'origine-----
De : Armin Waibel [mailto:[EMAIL PROTECTED]
Envoyé : mercredi 22 juin 2005 13:15
À : OJB Users List
Objet : Re: Method isDeleted(Identity) in TransactionImpl class
Hi Lorrain,
Laurent SIMON wrote:
Hello,
I'm using Ojb since version RC5 encapsulated in a persistent framework in
a
large J2EE application.
I try to migrate to the higher versions earliest after each release, but I
have a problem since version 1.0.3. Indeed, method isDeleted(Identity) of
the class TransactionImpl has been removed whereas I use it in my
framework.
Why was it deleted without passing by the state deprecated?
We did a huge odmg-implementation refactoring between 1.0.1 and 1.0.3
(and some more bug fixes will be included in upcoming 1.0.4). I don't
know that TransactionImpl#isDeleted was used as a "official" method,
that's the reason why it was not deprecated.
Now all OJB specific extensions of the odmg-api are encapsulated in the
OJB extension classes (ImplementationExt, TransactionExt, EnhancedOQLQuery).
I can add a method #isDeleted to TransactionExt (this is the recommended
way to use odmg-api extensions) this also (re-)introduce the method in
TransactionImpl.
Could you tell me why you need this method? There is a pitfall when
using this method because it could happen that OJB detect removed
objects as recently as the tx commits. E.g. when you remove some objects
in a 1:n relation.
regards,
Armin
What can I do
to obtain the same result? Thank you in advance for your answers.
Regards,
Lorrain
---------------------------------------------------------------------
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]