This discussion is archived
6 Replies Latest reply: Jun 6, 2011 9:13 AM by 810010 RSS

[BPM11g] "BPMWorkflowReassign" role in User's Guide

725165 Journeyer
Currently Being Moderated
In the Users Guide there are several references to the "BPMWorkflowReassign" role - where is this role defined? How can you grant it to users?

Specifically in section "3.4 Reassigning and Delegating Tasks in Oracle Business Process Management Workspace" there is a sentence that reads "Users with the BPMWorkflowReassign role can assign tasks to any users in the organization."

I've tried creating this role in the Administration -> Organization -> Roles section of the workspace and assigned users to it, but it didn't seem to do anything.

Whenever I try to reassign or ad hoc route to users defined in external LDAP (Active Directory configured as described in "21.7.1 Adding an Authentication Provider" of the Admin Guide), it doesn't work. The ad hoc route just doesn't add the new assignee at all, and reassign actually unassigns the task completely.
  • 1. Re: [BPM11g] "BPMWorkflowReassign" role in User's Guide
    827290 Newbie
    Currently Being Moderated
    hi

    i have same problem


    please help



    bye
  • 2. Re: [BPM11g] "BPMWorkflowReassign" role in User's Guide
    297706 Newbie
    Currently Being Moderated
    BPMWorkflowReassign role is no longer used; any references in documentation are doc bugs and we will address them.

    Reassign capability is controlled by visibility rules in Task (that is, in .task file go to access --> actions). Note that this can be used to revoke privileges but not grant additional ones.

    If the scenario is that the current assignee's manager should have the Reassign privilege:
    a. Need to use the concept of Owner
    b. Owner can be dynamically assigned; so assign it to manager of assignee (or if you want to use a group, you can do that as well)
    c. If needed, take away the other privileges granted to Owner
    d. If needed, take away the reassign privilege from Assignee

    Related issue is how to control the list of reassign candidates. This can be done with Java; please see http://blogs.oracle.com/soa_how_to/2010/01/how_does_restricted_task_reassignments_work_in_soa_11g.html.
  • 3. Re: [BPM11g] "BPMWorkflowReassign" role in User's Guide
    827290 Newbie
    Currently Being Moderated
    tankyou for your attention


    i implemented RestrictedAssignmentCallback class . but only predefined users (like weblogic) and created users with "oracle.security.idm.UserManager" api , show in user list for reassignment in worklistapp.

    for exmaple i created user with name 'hamed' in weblogic console and restricted reassignment only to him . but it didnt work .


    please help me
  • 4. Re: [BPM11g] "BPMWorkflowReassign" role in User's Guide
    441803 Newbie
    Currently Being Moderated
    We can only read off only user store. What is the user directory configured to be used in SOA and when you add user in weblogic, do you know where this is added?
  • 5. Re: [BPM11g] "BPMWorkflowReassign" role in User's Guide
    827290 Newbie
    Currently Being Moderated
    one scenario is like this :

    1- I created user 'weblogic' when i configured application server(new domain creation) .
    2- I added new users with weblogic server console that stores them in embeded LDAP .
    in this example : "user1" , "user2" , "user3" .
    3- I added new users by "DemoCommunitySeedApp" application .
    note : I know that this application uses "oracle.security.idm.IdentityStore" , "oracle.security.idm.User" ,
    "oracle.security.idm.UserManager" , ... for creatiing new users and groups and application role .
    users like : "jcooper" , "jstein", "wfaulk" , were added .
    4- I extended IRestrictedAssignmentCallback for a sample task :

    package org.basa.soa.restrictAssign;

    import java.util.ArrayList;
    import java.util.List;
    import java.util.Map;
    import oracle.bpel.services.workflow.task.IRestrictedAssignmentCallback;
    import oracle.bpel.services.workflow.task.IRestrictedAssignees;
    import oracle.bpel.services.workflow.task.ITaskAssignee;
    import oracle.bpel.services.workflow.task.impl.TaskAssignee;
    import oracle.bpel.services.workflow.task.impl.RestrictedAssignees;
    import oracle.bpel.services.workflow.task.model.Task;
    import oracle.bpel.services.workflow.IWorkflowConstants;



    public class RestrictedAssignmentCallback2 implements
    oracle.bpel.services.workflow.task.IRestrictedAssignmentCallback {

    public IRestrictedAssignees getPermittedAssignees(Task task,
    Map propertyMap,
    String currentUser,
    String identityContext,
    String operation) {
         if(operation.equals(
    IRestrictedAssignmentCallback.OperationType.REASSIGN.toString())) {
    System.out.println("in the re assign condistion");
         return new RestrictedAssignees(createReassignTaskAssigneeList(),
    true);
    }
         return null;
    }

    public List getRestrictedOperations(Task task,
    Map propertyMap,
    String currentUser,
    String identityContext) {
         List retList = new ArrayList();
         retList.add(RestrictedAssignmentCallback.OperationType.REASSIGN);
         retList.add(RestrictedAssignmentCallback.OperationType.ROUTE);
         return retList;
    }     

    private ITaskAssignee createTaskAssignee(String name, boolean isGrp) {

         return (new TaskAssignee(name, isGrp));
    }
    private ITaskAssignee createTaskAssignee(String name, String type) {
    return (new TaskAssignee(name, type));
    }

    private List createReassignTaskAssigneeList() {
    List retList = new ArrayList();
    retList.add(createTaskAssignee("weblogic",IWorkflowConstants.IDENTITY_TYPE_USER));
    retList.add(createTaskAssignee("jcooper",IWorkflowConstants.IDENTITY_TYPE_USER));
    retList.add(createTaskAssignee("jstein", IWorkflowConstants.IDENTITY_TYPE_USER));
    retList.add(createTaskAssignee("wfaulk", IWorkflowConstants.IDENTITY_TYPE_USER));


    retList.add(createTaskAssignee("user1",IWorkflowConstants.IDENTITY_TYPE_USER));
    retList.add(createTaskAssignee("user2", IWorkflowConstants.IDENTITY_TYPE_USER));
    retList.add(createTaskAssignee("user3", IWorkflowConstants.IDENTITY_TYPE_USER));
    return retList;
    }
    }

    5- I logined in worklist app with weblogic user and want to reassign sample task to some one else ,
    but i saw only these users in the list: "weblogic","jcooper","jstein","wfaulk"
    and i didnot see these users : "user1","user2","user2"


    plaese help
  • 6. Re: [BPM11g] "BPMWorkflowReassign" role in User's Guide
    810010 Newbie
    Currently Being Moderated
    Hi,

    I have the same problem here. I can not update the task as any user. So I can not Add Comment, delete, ad-hoc route the task. Could you find a solution for this?

    Edit:
    Plus I can see a similar explanation in a Document like in the first comment.

    "To add or delete a comment, you must have permission to update the task."

    Where is that permission being hold?

    Thanks.

    Edited by: cenkozan on Jun 6, 2011 9:11 AM

Legend

  • Correct Answers - 10 points
  • Helpful Answers - 5 points