diff --git a/ejb-core/formtemplate/src/main/java/com/silverpeas/workflow/engine/instance/ProcessInstanceImpl.java b/ejb-core/formtemplate/src/main/java/com/silverpeas/workflow/engine/instance/ProcessInstanceImpl.java index 568b3357dd9..2d6c5c7f420 100644 --- a/ejb-core/formtemplate/src/main/java/com/silverpeas/workflow/engine/instance/ProcessInstanceImpl.java +++ b/ejb-core/formtemplate/src/main/java/com/silverpeas/workflow/engine/instance/ProcessInstanceImpl.java @@ -69,6 +69,7 @@ import org.exolab.castor.jdo.OQLQuery; import org.exolab.castor.jdo.PersistenceException; import org.exolab.castor.jdo.QueryResults; +import org.silverpeas.core.admin.OrganisationControllerFactory; /** * This class is one implementation of interface UpdatableProcessInstance. It uses Castor library @@ -1460,8 +1461,10 @@ public String[] getAssignedStates(User user, String roleName) throws WorkflowExc boolean userGroupsMatch = false; if (StringUtil.isDefined(wkUser.getGroupId())) { // check if one of userGroups matches with working group - if (user.getGroupIds() != null) { - userGroupsMatch = user.getGroupIds().contains(wkUser.getGroupId()); + List groupIds = Arrays.asList(OrganisationControllerFactory.getOrganisationController() + .getAllGroupIdsOfUser(wkUser.getId())); + if (groupIds != null) { + userGroupsMatch = groupIds.contains(wkUser.getGroupId()); } } diff --git a/ejb-core/formtemplate/src/main/java/com/silverpeas/workflow/engine/user/UserManagerImpl.java b/ejb-core/formtemplate/src/main/java/com/silverpeas/workflow/engine/user/UserManagerImpl.java index 4258de3fa47..3fa05b8a162 100644 --- a/ejb-core/formtemplate/src/main/java/com/silverpeas/workflow/engine/user/UserManagerImpl.java +++ b/ejb-core/formtemplate/src/main/java/com/silverpeas/workflow/engine/user/UserManagerImpl.java @@ -184,11 +184,6 @@ private User[] getUsers(UserDetail[] userDetails) { UserImpl[] users = new UserImpl[userDetails.length]; for (int i = 0; i < userDetails.length; i++) { users[i] = new UserImpl(userDetails[i]); - String[] groupIds = OrganisationControllerFactory.getOrganisationController() - .getAllGroupIdsOfUser(userDetails[i].getId()); - if (groupIds != null) { - users[i].setGroupIds(Arrays.asList(groupIds)); - } } return users; }