Humantask Assignment: Assignment by Names And Expressions composite

Humantask Assignment: Assignment by Names And Expressions

This blog post is part of a series of posts about humantask assignment. You can find the starting point of this series by following the next link.

In BPEL it is not possible to assign a task to a lane participant. The most simple assignment in BPEL is by Names and Expressions. In this post I will show this kind of assignment for both a BPEL and a BPMN process. In fact there is no difference between BPEL and BPMN. In this example I created a composite with a BPM component and a BPEL component. Both the BPEL process and the BPM process only contain a humantask. Actually it is the same humantask as show in the picture below.
composite
The BPM process model
BPM process
and the BPEL process model
BPEL process
The main difference between BPM and BPEL is that when you add a humantask to the process, BPEL automatically creates branches for all possible task outcomes and BPM does not. You have to create them yourself.

The humantask is created with all the defaults settings.
create task
create task implementation
Now the process is ready, so we can assign the task to a representative orĀ group of representatives. For this open the taskfile and select the assignment tab
assignment tab
Edit the default performer entry. Select ‘Names and Expressions’ in the drop-down list for the Participant list.
Assign taskGroup1 by name and the userName which is part of the payload by expression.
taskGroup1 contains taskUser1, taskUser2 and taskUser3. In the process the userName is filled with taskUser4.
participant type
By Name
By Expression
After deployment of the process and assigning the role to an existing user in the BPM workspace ..
users
.. we can start new instances via the EM.
The BPM Instance
trace
And the BPEL Instance
bpel trace
Opening the BPM workspace and login in as one of the assigned users (taskUser1 .. taskUser4) will show both the open BPEL as the BPM humantask.
tasksBPM
And the BPM worklist also shows them both
tasksSOA
The task form is not actually created but the task does exist, and the outcome can be set via the menu.
approve
This brings me to the end of this example. The example shows the most simple method for taskassignment available in Oracle SOA suite and BPM suite. From here you can download the sample project.