File APIs for Java Developers
Manipulate DOC, XLS, PPT, PDF and many others from your application.
http://aspose.com/file-tools
  • Post Reply
  • Bookmark Topic Watch Topic
  • New Topic

Section 3.2.1 of EJB 3.0 Persistence Specs

 
Meng Tan
Ranch Hand
Posts: 115
  • 0
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Hi,

Got a question.
Hope anyone can help me.

Under Section 3.2.1 (Persisting an Entity Instance) of EJB 3.0 Persistence Specs, it says

"If X is a detached object, the EntityExistsException may be thrown when the persist
operation is invoked, or the EntityExistsException or another PersistenceException
may be thrown at flush or commit time."


My understanding is that the "persist" method is for persisting a detached entity.
Why then will the "EntityExistsException" be thrown?

Please help!
Thanks!
 
Christophe Verré
Sheriff
Pie
Posts: 14691
16
Eclipse IDE Ubuntu VI Editor
  • 0
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
My understanding is that the "persist" method is for persisting a detached entity.
Why then will the "EntityExistsException" be thrown?

Wouldn't you use "merge" instead ?
 
Meng Tan
Ranch Hand
Posts: 115
  • 0
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Hi Christophe,

Yes, to save a detached entity, a "merge" can be used.

But Section 3.2.1 is for the "persist" operation.
It gives the semantics of the operation when performed with a new, preexisting managed, removed and detached entity.

Why is a "detached" entity considered differently from a "new" entity?

Thanks!
 
Meng Tan
Ranch Hand
Posts: 115
  • 0
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Sorry, I have missed the definitions of "new" and "detached" entities early in section 3.2.

A detached entity represents a record that is already in the database but the entity object itself is not associated with any persistence context.

Thanks!
  • Post Reply
  • Bookmark Topic Watch Topic
  • New Topic