在用 orphan-removal="true" 和 Cascade.ALL 映射的父类中具有 @OneToMany 关系。
首先,我坚持父对象。
然后我在 ManagedBean 上克隆父级,如下所示:
Parent newParent = (Parent) org.apache.commons.lang.SerializationUtils.clone(this.object);
,因此用户可以进行一些更改并单击“保存”按钮。
此时我坚持 newParent 但收到以下错误:
##"Caused by: org.hibernate.HibernateException: Don't change the reference to a collection with cascade="all-delete-orphan":package.Parent.children"##
我真的不明白为什么我会收到这个错误,因为不需要这种关系。当我第一次坚持父母时,我没有为这种关系设置任何东西,它工作正常。
看起来问题是克隆后出现的,但我不知道为什么!
有人可以帮我解决这个问题吗?
谢谢。