JPA OneToMany löscht kein Kind

Ich habe ein problem mit einer einfachen @OneToMany Zuordnung zwischen einer übergeordneten und einer untergeordneten Einheit. Alles funktioniert gut, nur, dass die child-Datensätze werden nicht gelöscht, wenn ich entfernen Sie Sie aus der Auflistung.

Den Eltern:

@Entity
public class Parent {
    @Id
    @Column(name = "ID")
    private Long id;

    @OneToMany(cascade = {CascadeType.ALL}, mappedBy = "parent")
    private Set<Child> childs = new HashSet<Child>();

 ...
}

Kind:

@Entity
public class Child {
    @Id
    @Column(name = "ID")
    private Long id;

    @ManyToOne(cascade = CascadeType.ALL)
    @JoinColumn(name="PARENTID", nullable = false)
    private Parent parent;

  ...
}

Wenn ich nun löschen und Kind aus dem Kinder-Set, wird es nicht aus der Datenbank gelöscht. Ich habe versucht, der Annullierung des child.parent Referenz, aber das hat nicht funktioniert entweder.

Den entities verwendet werden, die in einer web-Anwendung, die Sie löschen geschieht als Teil einer Ajax-Anfrage. Ich habe nicht eine Liste der gelöschten Kinder, wenn der button speichern gedrückt wird, so ich kann nicht löschen Sie implizit.

InformationsquelleAutor der Frage bert | 2010-01-06

Schreibe einen Kommentar