simply use orphanRemoval=true, instead of re-doing it badly by hand, in the controller.