I have the following entities. I want to be able to delete a User and any entry in the UserGroupMap that contains that User should also get deleted. However everytime I try deleting a user that also has a entry in UserGroupMap I am getting the following error.Cannot delete or update a parent row: a foreign key constraint fails How can I achieve this behavior?
@Entity
public class User {
@Id
private Long id;
@Column
private String name;
@ManyToMany(mappedBy = "users", cascade = CascadeType.All)
private Set<Group> groups;
}
@Entity
public class Group {
@Id
private Long id;
@Column
private String type;
@ManyToMany
@JoinTable(name = "UserGroupMap",
joinColumns = @JoinColumn(name = "groupId", referencedColumnName = "id"),
inverseJoinColumns = @JoinColumn(name = "userId", referencedColumnName = "id") )
private Set<User> users;
}