Я пытаюсь сделать копию объекта спящего режима A следующим образом:
A a = (A) session.get(A.class, id);
session.evict(a);
a.setId(null);
session.save(a);
Это, однако, не работает, и я получаю следующее сообщение:
org.hibernate.HibernateException: Don't change the reference to a collection with cascade="all-delete-orphan": com.test.A.B
Безопасно предположить, что эта ошибка происходит из-за того, что у меня есть совокупность объекта B, определенного в сущности A:
<list name="B" table="B" lazy="false" cascade="all,delete-orphan">
<key column="A_ID" not-null="true"/>
<index column="X"/>
<one-to-many class="com.test.B"/>
</list>
Как можно сделать копию сущности A, включая ее коллекцию сущностей B без спящего режима, которая была недовольна этим?