[jboss-user] [jBPM] - Re: User Task Group Assignment

jemmerling do-not-reply at jboss.com
Mon Jan 30 10:26:32 EST 2012


jemmerling [https://community.jboss.org/people/jemmerling] created the discussion

"Re: User Task Group Assignment"

To view the discussion, visit: https://community.jboss.org/message/649479#649479

--------------------------------------------------------------
Charlie,

I have spent some time evaluating jBPM5 and I would say that, in general, jBPM5 mostly allows the application to determine how users are associated with groups.

Of course, I don't know how you are planning to use jBPM5, if you are planning to run everything in the Console and not implement your own application, you may not find my advice so useful and will have to rely on somebody else's response.

Although the ActorId parameter in a Human Task can be "hard-coded" to specify a particular individual (although I suppose "actor" does not necessarily have to indicate a specific individual in real life) in most practical situations, if you are going to use the ActorId parameter it will be determined at run time and this will be indicated in your model via some sort of expression, typically an expression that references a process variable. If ActorId is specified and GroupId is not specified, then the task will be immediately assigned to that actor (but not if GroupId is also specified, from what I have personally observed).

So in this situation, as I see it, it would be the responsibility of the application to determine whether an actor has the necessary group membership. If you want to specify the actor for a particular task when creating a new process, or at some later point during the lifecycle of that process, you should be able to determine this based on your own requirements. So if the actor for "Task One" is has to satisfy some criteria (such as membership in a group) then if you want to designate them when creating the process, you first perform some test on your side that determines this. If this will be determined downstream, then it gets more complicated. Probably the actor will be determined as a side effect of completing an upstream task, captured as a task variable, then mapped back to the process instance. So when completing this upstream task, the logic used to identify this actor will ensure this actor is in the appropriate group along with any other criteria needed to designate a specific actor.

An important mechanism whereby the application determines group membership is when implementing org.jbpm.task.service.UserGroupCallback, particular the getGroupsForUser method. You should be able to find some discussion of this in the User Manual.


I have avoided going into too much detail on this, but I hope this brings you somewhat closer to the answer you need, cheers!

--JE
--------------------------------------------------------------

Reply to this message by going to Community
[https://community.jboss.org/message/649479#649479]

Start a new discussion in jBPM at Community
[https://community.jboss.org/choose-container!input.jspa?contentType=1&containerType=14&container=2034]

-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.jboss.org/pipermail/jboss-user/attachments/20120130/96c4016a/attachment.html 


More information about the jboss-user mailing list