EclipseLink で、
Entity must be managed to call remove: Entity[ id=601 ], try merging the detached and try the remove again.
対処方法を
前提
使用している
- EclipseLink
<!-- Eclipse Link --> <dependency> <groupId>org.eclipse.persistence</groupId> <artifactId>eclipselink</artifactId> <version>2.6.3</version> </dependency>
- postgress
psql --version --------------------------- psql (PostgreSQL) 9.5.2 ---------------------------
参考
原因と 対処
EntityManager で
remove() をEntityManager#merge()
を
/** * remove * * @param entity * @return */ public T remove(T entity) { try { if (!em.contains(entity)) { entity = em.merge(entity); } em.remove(entity); } catch (ConstraintViolationException ex) { ConstraintViolationUtils.writeLogAndThrow(ex); } return entity; }
Detach と、
以上です。
コメント