@OneToMany
Bir üst öğe ile alt öğe arasındaki basit bir eşlemeyle ilgili sorunum var . Her şey iyi çalışıyor, koleksiyondan kaldırdığımda yalnızca alt kayıtlar silinmiyor.
Ebeveyn:
@Entity
public class Parent {
@Id
@Column(name = "ID")
private Long id;
@OneToMany(cascade = {CascadeType.ALL}, mappedBy = "parent")
private Set<Child> childs = new HashSet<Child>();
...
}
Çocuk:
@Entity
public class Child {
@Id
@Column(name = "ID")
private Long id;
@ManyToOne(cascade = CascadeType.ALL)
@JoinColumn(name="PARENTID", nullable = false)
private Parent parent;
...
}
Şimdi childs setinden ve alt öğeyi silersem, veritabanından silinmez. child.parent
Referansı iptal etmeyi denedim , ama bu da işe yaramadı.
Varlıklar bir web uygulamasında kullanılır, silme işlemi Ajax isteğinin bir parçası olarak gerçekleşir. Kaydet düğmesine basıldığında silinmiş alt öğe listem yok, bu yüzden onları dolaylı olarak silemiyorum.