I have this kind of entities:
Document | n .. to ..1 | DocumentType | 1 .. to .. n | PropertyType | 1 .. to
I assume you have called remove()
on an of type PropertyType
before. Call remove()
only for the "root" entity, and remove the others with something like:
document.getDocumentType().getPropertyTypes().remove(propertyType);
And retain the DELETE_ORPHAN
You can then, after verifying you haven't manually called remove()
on other entities, try calling:
document = entityManager.merge(document);
entityManager.remove(document);
so that the EntityManager
reassociates the object with the session first.