Introduction:
Human Task flow in Oracle SOA Suite is similar to the Workflow process in Oracle E-Business suite. It has different types of approval/rejection process like single user, group of user and chain of user. Oracle SOA Suite also provides an interface for the user to interact with the taskflow. Oracle ADF taskflow develops the user interface within the SOA composite for the approval taskflow. User can access the approval flow process in BPM worklist as Human Task Flow is an integrated part of BPM Suite. So the whole taskflow process will consists of below steps:
- Create Human Task component in SOA composite
- Associate the Human Task to BPEL component
- Generate Task flow for user interface using ADF taskflow during runtime in Oracle BPM Worklist.
Here I am going to give a simple example of Human Taskflow. Approval will go to single user by giving any input value.
Steps for implementing Human Taskflow Process:
- Create an application. Click on File -> New -> Application. Select SOA Application and Enter application name a�?HumanTaskFlowApplicationa��.
- Click on Next and enter project name a�?HumanTaskFlowDemoa��
- Click on Next and select composite type as a�?Composite With human Taska��
- Click on Finish and a�?Create Human taska�� wizard will open. Enter task name a�?ApproveTaska��
- Click on OK and .task file will be created. It looks like below screenshot.
- Go to a�?Generala�� tab and enter a�?Task Titlea��. Click on a�?Build title from XPatha�� and enter a�?Dummy Task Flowa�� in the expression builder.
- Select owner as User
- Go to a�?Dataa�� tab and click on green plus icon to add parameter. Select a�?Add string parametera��
- Enter parameter name a�?parama�� and click on OK
- Go to a�?Assignmenta�� tab and select a�?Single Participanta�� from Participants in the components and drag and drop it into the stage.
- Double click on a�?Participanta�� and select user here who will approve the task.
- Click on green plus icon and select a�?Add Usera��
- Click on Browse button and select user as a�?weblogica��
- Click on OK
- User can be created in SOA Administration Console. Go to a�?Security Realmsa�� and select a�?myrealma��. Click on a�?Newa�� and create new user. Here I am selecting weblogic.
- Drag and drop a BPEL service in the a�?Componentsa�� lane
- a�?Create BPEL Processa�� wizard will open. Enter BPEL process name and select template type as a�?Asynchronous BPEL Processa��. Expose the BPEL process as SOAP service also.
- Click on OK and connect BPEL process with the Human Task Flow. SOA Composite will look like this.
- Double click on BPEL process
- Select a�?Human taska�� from SOA Components and drag and drop it in between a�?receiveInputa�� and a�?callbackClienta��
- a�?Human Task Editora�� wizard will open and select Task Definition
- Now select Task Parameter. Task Parameter will be the input payload.
- Click on OK and the BPEL process will be like the below screenshot
- If-else condition will be created with the Human Task. Click on plus icon of a�?Approval Taska��
- Delete the ELSE part. Double click on a�?Assigna�� activity in the a�?Approvea�� condition
- Assign the output payload with the a�?task:outcome stringa��
- Drag and drop a�?Assigna�� activity in the a�?Rejecta�� condition
- Add a message in the output payload. Right click on output payload and select a�?Expressiona��
- Add a�?Task is rejecteda�� in the expression
- BPEL process will look like the below screenshot
- Save the application. Go to Human Task Flow (.task) and select Form -> Auto Generate Task Form and enter the project name a�?WorklistDemoa��
- ADF task flow will be created. Save it
- Two projects have created under same application
- Now deploy the projects. Right click on a�?HumanTaskFlowDemoa�� project and select deploy
- Select a�?Deploy to application servera�� as deployment action
- Click on Next and change the option according to the below screenshot
- Click on Next and select a�?WorklistDemoa�� project for task flow deployment
- Click on Next and select SOA server and partition
- Select repository name and then click on a�?Deploya��. Deployment is finished.
- Test the project. Open Enterprise Manager Console and select the project. Click on a�?Testa��
- Enter any characters as input value
- Click on a�?Test Web Servicea��
- Navigate to a�?Launch Flow Tracea��. In flow trace BPEL process and Approve Task workflow process are in a�?Runninga�� status.
- Click on a�?HumanTaskBPELProcessa�� and check the audit trail part. BPEL process is pending with the Approve Task workflow process until and unless the workflow process is approved by the user a�?weblogica��.
- Login to BPM Worklist (http://localhost:7101/integration/worklistapp) and approve the task flow. Select the task and navigate to Action -> Approve
- Go back to EM Console and check the a�?Flow Tracea��. BPEL process and Approve Task Flow process are completed now.
This is the workflow process in SOA Suite 12C. ADF task flow is integrated with Human Task. You can generate your own ADF task flow also and integrate with Human Task Flow.