(no commit message)
[utils] / security / impl / src / main / java / org / wamblee / usermgt / jpa / JpaGroupSet.java
index 1a9be6f217d8008ad20b4b339c716f4bff952545..763fced4e464512ef6e927cecfb93be7785651ec 100644 (file)
@@ -7,6 +7,7 @@ import java.util.TreeSet;
 import javax.persistence.EntityManager;
 import javax.persistence.TypedQuery;
 
+import org.wamblee.persistence.JpaMergeSupport;
 import org.wamblee.usermgt.Group;
 import org.wamblee.usermgt.GroupSet;
 
@@ -52,7 +53,12 @@ public class JpaGroupSet implements GroupSet {
     @Override
     public void groupModified(Group aGroup) {
         assert aGroup.getPrimaryKey() != null;
-        em.merge(aGroup);
+        Group merged = em.merge(aGroup);
+        // Need to flush so that version of the merged instance is updated so we can use 
+        // the updated version in the original group passed in. That allows the same 
+        // group object to continue to be used as a detached object. 
+        em.flush();
+        JpaMergeSupport.merge(merged, aGroup);
     }
 
     @Override