From 25dfb819df50976f8fc924686749e215099b5f0e Mon Sep 17 00:00:00 2001 From: Bill Smith Date: Mon, 7 Jan 2019 13:01:57 -0700 Subject: [PATCH] [SHIBUI-1031] Fixed a cascade issue where deleting a user would delete the role associated with the user.. which in turn would delete all users associated with that role. --- .../internet2/tier/shibboleth/admin/ui/security/model/Role.java | 2 +- .../internet2/tier/shibboleth/admin/ui/security/model/User.java | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/backend/src/main/java/edu/internet2/tier/shibboleth/admin/ui/security/model/Role.java b/backend/src/main/java/edu/internet2/tier/shibboleth/admin/ui/security/model/Role.java index 087b1457a..c7f1112b3 100644 --- a/backend/src/main/java/edu/internet2/tier/shibboleth/admin/ui/security/model/Role.java +++ b/backend/src/main/java/edu/internet2/tier/shibboleth/admin/ui/security/model/Role.java @@ -45,7 +45,7 @@ public Role(String name, int rank) { //Ignore properties annotation here is to prevent stack overflow recursive error during JSON serialization @JsonIgnoreProperties("roles") - @ManyToMany(cascade = CascadeType.ALL, mappedBy = "roles", fetch = FetchType.EAGER) + @ManyToMany(mappedBy = "roles", fetch = FetchType.EAGER) private Set users = new HashSet<>(); } diff --git a/backend/src/main/java/edu/internet2/tier/shibboleth/admin/ui/security/model/User.java b/backend/src/main/java/edu/internet2/tier/shibboleth/admin/ui/security/model/User.java index 5993aea72..edb7c542a 100644 --- a/backend/src/main/java/edu/internet2/tier/shibboleth/admin/ui/security/model/User.java +++ b/backend/src/main/java/edu/internet2/tier/shibboleth/admin/ui/security/model/User.java @@ -50,7 +50,7 @@ public class User extends AbstractAuditable { private String role; @JsonIgnore - @ManyToMany(cascade = CascadeType.ALL) + @ManyToMany(cascade = CascadeType.PERSIST) @JoinTable(name = "user_role", joinColumns = @JoinColumn(name = "user_id"), inverseJoinColumns = @JoinColumn(name = "role_id")) private Set roles = new HashSet<>();