aspose file tools*
The moose likes Object Relational Mapping and the fly likes detached entity passed to persist Big Moose Saloon
  Search | Java FAQ | Recent Topics | Flagged Topics | Hot Topics | Zero Replies
Register / Login


Win a copy of Java 8 in Action this week in the Java 8 forum!
JavaRanch » Java Forums » Databases » Object Relational Mapping
Bookmark "detached entity passed to persist" Watch "detached entity passed to persist" New topic
Author

detached entity passed to persist

Gokcen Guner
Greenhorn

Joined: May 23, 2009
Posts: 9
I have 3 entities user, patient and doctor. Every doctor or patient is a user. I don't use inheritance strategy because I couldn't get an answer from my question here: Previous Problem

Now I'm trying to achieve a similar point without inheritance. Schema is like that:
User <--- OneToOne --> Doctor
User <--- OneToOne --> Patient
Patient <--- ManyToMany --> Doctor

My entities:
User.java:


Patient.java:


Doctor.java:


I've written junit tests for these entities. The doctor methods are working but patients' not.
This one creates 3 users(2 for patients 1 for doctor), 2 patients and a doctor.
DoctorTest.java:


But that one doesn't work as I expect:

PatientTest.java:


The for loop inside testCreatePatient executes up to unitNumber. When i becomes unitNumber + 1 (I mean 21), I'm getting detached entity passed to persist: tr.com.stigma.db.entity.User. It creates 20 doctors, 20 patients and 40 users until i gets to 20. At the 21st insert, I try to add a new patient to an existing doctor, consequently to an existing user. How can I do this?

Stack trace is here:
Gokcen Guner
Greenhorn

Joined: May 23, 2009
Posts: 9
Although nobody replied, I solved it.
I changed @ManyToMany(cascade = { CascadeType.PERSIST, CascadeType.MERGE, CascadeType.REMOVE }) to @ManyToMany(cascade = { CascadeType.ALL })

 
I agree. Here's the link: http://aspose.com/file-tools
 
subject: detached entity passed to persist
 
Similar Threads
jpa problem
Simple But Crazy Cascade Problem
Bi-directional many-to-many mapping question
org.hibernate.PropertyValueException: not-null property references a null or transient value:
Hibernate exception in OneToOne mapping