Action Types To instruct the task service on how to route the task, rules can Sample Ruleset This section describes how to use rules to implement custom

Designing Human Tasks 27-51 Figure 27–52 Use External Routing Dialog

4. In the Class Name field, enter the fully qualified class file name for example, the

org.mycompany.tasks.RoutingService class name. This class must implement the following interface: oracle.bpel.services.workflow.task.IAssignmentService

5. Add name and pair value parameters by name or XPath expression that can be

passed to the external service, as shown in Table 27–14 .

6. Click the Add icon to add additional name and pair value parameters.

27.3.7.4 Configuring the Error Assignee

Tasks can error for reasons such as incorrect assignments. When such errors occur, the task is assigned to the error assignee, who can perform corrective actions. Recoverable errors are as follows: ■ Invalid user and group for all participants ■ Invalid XPath expressions that are related to assignees and expiration duration ■ Escalation on expiration errors ■ Evaluating escalation policy ■ Evaluating renewal policy ■ Computing a management chain ■ Evaluating dynamic assignment rules. The task is not currently in error, but is still left as assigned to the current user and is therefore recoverable. Table 27–14 External Routing Field Description By Name Enter a name in the Name field and a value in the Value field. By Expression Enter a name and dynamically enter a value by clicking the icon to the right of the field to display the Expression Builder dialog. 27-52 Oracle Fusion Middleware Developers Guide for Oracle SOA Suite ■ Dynamic assignment cyclic assignment for example, user A user B user A. The task is not currently in error, but is still left as assigned to the last user in the chain and is therefore recoverable. The following errors are not recoverable. In these cases, the task is moved to the terminating state ERRORED. ■ Invalid task metadata ■ Unable to read task metadata ■ Invalid GOTO participant from state machine rules ■ Assignment service not found ■ Any errors from assignment service ■ Evaluating custom escalate functions ■ Invalid XPath and values for parallel default outcome and percentage values During modeling of workflow tasks, you can specify error assignees for the workflow. If error assignees are specified, they are evaluated and the task is assigned to them. If no error assignee is specified at runtime, an administration user is discovered and is assigned the alerted task. The error assignee can perform one of the following actions: ■ Ad hoc route Route the task to the actual users assigned to the task. Ad hoc routing allows the task to be routed to users in sequence, parallel, and so on. ■ Reassign Reassign the task to the actual users assigned to this task ■ Error task Indicate that this task cannot be rectified. If there are any errors in evaluating the error assignees, the task is marked as being in error. This dialog enables you to specify the users or groups to whom the task is assigned if an error in assignment has occurred. To configure the error assignee: 1. In the Assignment section, click the icon to the right of Task will go from starting to final participant .

2. Click the Assignment tab.

3. Click the Add icon to assign reviewers or error assignees, as shown in

Figure 27–53 . Designing Human Tasks 27-53 Figure 27–53 Error Assignment Details

4. Click the Add icon and select a user, group, or application role to participate in

this task. The Identification Type column of the Starting Participant table displays your selection of user, group, or application role. 5. See Step 4 through 6 of Section 27.3.6.1.1, Creating a Single Task Participant List for instructions on selecting a user, group, or application role. 6. If you are using parallel participant types, you can specify where to store the subtask payload with the following options. ■ Use server settings The SharePayloadAcrossAllParallelApprovers System MBean Browser boolean property in Oracle Enterprise Manager Fusion Middleware Control determines whether to share the payload of subtasks in the root task. By default, this property is set to true. If set to true, the All task participants share the same payload better performance and less storage space option is used. If this property is set to false, the Each parallel participant has a local copy of the payload option is used. To change this property, perform the following steps:

a. Right-click soa-infra and select Administration System MBean

Browser .

b. Expand Application Defined MBeans oracle.as.soainfra.config

Server: server_name WorkflowConfig human-workflow.

c. Click SharePayloadAcrossAllParallelApprovers.

d. Change this property in the list, and click Apply.

■ All task participants share the same payload better performance and less storage space The payload for the subtasks is stored in their root task. This means that the payload of the root task is shared across all its subtasks. Internally, this option provides better performance and storage space consumption. Less storage space is consumed because the payload of the root task is shared across all its subtasks. ■ Each parallel participant has a local copy of the payload