Gostaria de saber se existe alguma annotation que faça a deleção em cascata no Hibernate ? Segue abaixo exemplo:
1° - Pojo
@Entity
public class Pojo1{
@OneToMany(fetch = FetchType.LAZY, mappedBy= "pojo1",cascade = CascadeType.ALL)
@Cascade(org.hibernate.annotations.CascadeType.DELETE_ORPHAN)
private List<Pojo2> itens;
}
2° - Pojo
@Entity
public class Pojo2 {
@ManyToOne(fetch = FetchType.LAZY)
@JoinColumn(nullable = false)
private Pojo1 pojo1;
}
As duas entidades que participam desse relacionamento estão configuradas da forma descrita acima. Quando salvo um objeto do tipo Pojo1 ele salva tranquilo os itens (ou seja, a lista de Pojo2). Porém quando removesse um pojo1 gostaria que ele removesse em cascata todos os filhos (a lista de Pojo2).
Já tentei com CascadeType. : DELETE_ORPHAN, ALL; porém sempre da pau de restrição de chave.
Alguma dica ?