ฉันประสบปัญหาดังต่อไปนี้เมื่อพยายามอัปเดตเอนทิตีของฉัน:
"A collection with cascade=”all-delete-orphan” was no longer referenced by the owning entity instance".
ฉันมีเอนทิตีหลักและมีSet<...>
เอนทิตีลูกบางอย่าง เมื่อฉันพยายามอัปเดตฉันจะได้รับการอ้างอิงทั้งหมดเพื่อตั้งค่าเป็นคอลเล็กชันนี้และตั้งค่า
รหัสต่อไปนี้แสดงถึงการทำแผนที่ของฉัน:
@OneToMany(mappedBy = "parentEntity", fetch = FetchType.EAGER)
@Cascade({ CascadeType.ALL, CascadeType.DELETE_ORPHAN })
public Set<ChildEntity> getChildren() {
return this.children;
}
ฉันพยายามทำความสะอาด Set <.. > เท่านั้นตามนี้: วิธี "เป็นไปได้" ในการแก้ปัญหาแต่มันไม่ทำงาน
หากคุณมีความคิดใด ๆ โปรดแจ้งให้เราทราบ
ขอบคุณ!
something.manyother.remove(other)
ถ้าเป็นmanyother
List<T>
ทำให้คนอื่นกลายเป็นคนที่ไม่ชอบ, ชอบArrayList<T>
และใช้orphanDelete = true