It doesn’t appear to be possible at the moment with jpa/hibernate.
On delete set null in hibernate in @OneToMany
JBs solution seems clean though:
for (Department child : parent.getChildren()) {
child.setParentDepartment(null);
}
session.delete(parent);
You should also be able to put it in a PreRemove:
@PreRemove
private void preRemove() {
for (Student s : studentList) {
s.setTeacher(null);
}
}