Saya mengalami masalah berikut ketika mencoba memperbarui entitas saya:
"A collection with cascade=”all-delete-orphan” was no longer referenced by the owning entity instance".
Saya memiliki entitas induk dan entitas Set<...>
entitas anak. Ketika saya mencoba untuk memperbaruinya, saya mendapatkan semua referensi untuk diset ke koleksi ini dan mengaturnya.
Kode berikut mewakili pemetaan saya:
@OneToMany(mappedBy = "parentEntity", fetch = FetchType.EAGER)
@Cascade({ CascadeType.ALL, CascadeType.DELETE_ORPHAN })
public Set<ChildEntity> getChildren() {
return this.children;
}
Saya sudah mencoba untuk membersihkan Set <..> saja, sesuai dengan ini: Cara "mungkin" menyelesaikan masalah tetapi tidak berhasil.
Jika Anda punya ide, beri tahu saya.
Terima kasih!
something.manyother.remove(other)
jika manyother
a List<T>
. Buat banyak yang bisa berubah, suka ArrayList<T>
dan gunakanorphanDelete = true