Oracle® Fusion Middleware Administrator's Guide for Oracle SOA Suite 11g Release 1 (11.1.1) Part Number E10226-02 |
|
|
View PDF |
This chapter describes how to manage human task service components and the human workflow service engine.
This chapter includes the following topics:
Section 20.1, "Managing Human Task Service Component Policies"
Section 20.2, "Recovering from Human Workflow Service Engine Faults"
Section 20.3, "Managing the URI of the Human Task Service Component Task Details Application"
Section 20.4, "Recovering from Human Task Service Component Faults"
Section 20.5, "Managing Outgoing Notifications and Incoming E-mail Notifications"
Section 20.6, "Moving Human Workflow Data from a Test to a Production Environment"
Note:
Human task service components are also known as human workflow service components in Oracle Enterprise Manager Fusion Middleware Control Console.For more information, see the following sections:
You can attach and detach security policies to and from human task service components of currently deployed SOA composite applications. Policies apply security to the delivery of messages. Oracle Fusion Middleware uses a policy-based model to manage Web services.
Note:
Before attaching policies, see Oracle Fusion Middleware Security and Administrator's Guide for Web Services for definitions of available policies and details about which ones to use in your environment.To manage human task service component policies:
Access this page through one of the following options:
From the SOA Infrastructure Menu... | From the SOA Folder in the Navigator... |
---|---|
|
|
Select the human task service component in the Component Metrics table.
Click Policies.
The Policies page enables you to attach and detach security policies to and from a human task service component. The policies table displays the attached policy name, the policy reference status (enabled or disabled) that you can toggle, the category (Management, Reliable Messaging, MTOM Attachment, Security, or WS Addressing), the total violations, and the authentication, authorization, confidentiality, and integrity failures since the SOA Infrastructure was last restarted.
Click Attach/Detach.
If multiple components are available, you are prompted to select the service or component for which to perform the attachment or detachment.
Select the service or component to which to attach or detach a policy.
This invokes a dialog for attaching or detaching policies.
Policies currently attached appear in the Attached Policies section. Additional policies available for attachment appear in the Available Policies section.
Select to attach policies appropriate to your environment.
Click Attach.
When you are finished attaching policies, click Validate.
If an error message appears, make the necessary corrections until you no longer have any validation errors.
Click OK.
The attached policy displays in the policies table.
For more information, see the following documentation:
Section 8.8, "Managing SOA Composite Application Policies" for the dialogs that display during policy attachment
Oracle Fusion Middleware Security and Administrator's Guide for Web Services for definitions of available policies and details about which ones to use for your environment
You can view and recover from faults in the human workflow service engine. All human task service component faults, regardless of the SOA composite application instance of which they are a part, can be viewed in the human workflow service engine.
Human workflow invocations from the BPEL service engine use different transaction than BPEL processes. Therefore, if a BPEL transaction is rolled back for any reason, the workflow task instances are still created.
To view and recover from human workflow service engine faults:
Access this page through one of the following options:
From the SOA Infrastructure Menu... | From the SOA Folder in the Navigator... |
---|---|
|
|
Click Faults.
The Faults page displays the following details:
A utility for searching for a specific fault by specifying a criteria and clicking Search. Click the Help icon for details.
Faults that occurred in the human workflow service engine, including the fault ID, error message, whether you can recover from the fault, the time at which the fault occurred, the SOA composite application and human task service component in which the fault occurred, the instance ID of the human task service component, and a link to a log file describing the fault.
Human task service engine faults identified as recoverable can be recovered from Oracle BPM Worklist.
Perform fault recovery through either of the following methods:
In the Error Message column, click a specific message to display complete fault details, including the fault ID, fault time, fault location, fault type, and error message text. If the fault is recoverable, a Recover Now button displays that you can click to recover from the fault. Clicking this button invokes the human workflow audit trail page for the instance. The audit trail page has a link to the Oracle BPM Worklist called Go to Worklist Application, where you can go to recover from the fault. The Oracle BPM Worklist link does not take you directly to the fault; you must manually locate the fault.
In the Recovery column, click a fault that is marked as recoverable to invoke the human workflow audit trail page for the instance. The audit trail page provides the same link to the Oracle BPM Worklist called Go to Worklist Application.
Perform the following additional monitoring tasks from within the faults table:
Click the Show only recoverable faults check box to display only faults from which you can recover.
From the Fault Type list, select to display all faults, system faults, business faults, or Oracle Web Service Manager (OWSM) faults in the faults table. Click the Help icon for a description of these fault types.
From the View list, select Columns > Fault ID to display the fault IDs for each error message. The fault ID is automatically generated and uniquely identifies a fault. The fault ID also displays when you click an error message.
In the Composite column, click a specific SOA composite application to access its home page.
In the Component column, click a specific service component to access its home page.
In the Component Instance ID column, click a specific service component ID to access task details about the instance (for example, the current state of a task). Note that rejected messages do not have a component instance ID.
In the Logs column, click a specific log to access the Log Messages page with filtered messages specific to that instance.
You can add or remove the URI of the task details application used in human workflow.
To manage the URI of the human task service component task details application:
Access this page through one of the following options:
From the SOA Infrastructure Menu... | From the SOA Folder in the Navigator... |
---|---|
|
|
Select the human task service component in the Component Metrics table.
Click Administration.
The Administration page shows the URI for the task details application.
Click the Add icon to specify the following details for the URI:
Application name
Host name
HTTP port
HTTPS port (optional)
URI
Click Apply.
You can view and recover from human task service component faults. The human task service component is also known as the human workflow service component.
To view and recover from human task service component faults:
Access this page through one of the following options:
From the SOA Infrastructure Menu... | From the SOA Folder in the Navigator... |
---|---|
|
|
Select the human task service component in the Component Metrics table.
Click Faults.
The Faults page displays the following details:
A utility for searching for a specific human task service component fault by specifying a criteria and clicking Search. Click the Help icon for details.
Faults that occurred in the human task service component, including the fault ID, error message, whether you can recover from the fault, the time at which the fault occurred, the instance ID of the human task service component, and a link to a log file describing the fault.
Human workflow service engine faults identified as recoverable can be recovered from the Oracle BPM Worklist.
Perform fault recovery through either of the following methods:
In the Error Message column, click a specific message to display complete fault details, including the fault ID, fault time, fault location, fault type, and error message text. If the fault is recoverable, a Recover Now button displays that you can click to recover from the fault. Clicking this button invokes the human workflow audit trail page for the instance. The audit trail page has a link to the Oracle BPM Worklist called Go to Worklist Application, where you can go to recover from the fault. The Oracle BPM Worklist link does not take you directly to the fault; you must manually locate the fault.
In the Recovery column, click a fault that is marked as recoverable to invoke the human workflow audit trail page for the instance. The audit trail page provides the same link to the Oracle BPM Worklist called Go to Worklist Application.
Perform the following additional monitoring tasks from within the faults table:
Click the Show only recoverable faults check box to display only faults from which you can recover.
From the Fault Type list, select to display all faults, system faults, business faults, or OWSM faults in the faults table. Click the Help icon for a description of these fault types.
From the View list, select Columns > Fault ID to display the fault IDs for each error message. The fault ID is automatically generated and uniquely identifies a fault. The fault ID also displays when you click an error message.
In the Component Instance ID column, click a specific service component ID to access task details about the instance (for example, the current state of a task). Note that rejected messages do not have a component instance ID.
In the Logs column, click a specific log to access the Log Messages page with filtered messages specific to that instance.
You can manage incoming and outgoing notifications through e-mail in human workflow, including testing messages, resending messages, and identifying messages as spam.
Incoming and outgoing notifications are sent to and from human workflow. Incoming notifications are responses to actionable notifications. For example, an outgoing notification is sent to the manager of an employee requesting vacation leave. The manager approves the request by clicking the Approve link in the actionable notification e-mail. This action sends an incoming notification to human workflow for possible additional processing.
To manage outgoing notifications and incoming e-mail notifications:
Access this page through one of the following options:
From the SOA Infrastructure Menu... | From the SOA Folder in the Navigator... |
---|---|
|
|
Click Notification Management.
The upper part of the Notification Management page displays the following details:
A utility for searching for a specific message by specifying a criteria and clicking Search. You must expand the Search icon to display this utility.
Outgoing notifications, including the source ID, the source type (for example, if a notification is sent by a BPEL service component, the type is BPEL), the channel used (for example, e-mail, SMS, instant messenger, or voice), the address of the message recipient, the message status (for example, error, send, retry, sent), and the time at which the message was sent.
The lower part of the Notification Management page displays the following details:
A utility for searching for a specific message by specifying a criteria and clicking Search. You must expand the Search icon to display this utility.
Incoming notifications, including the message ID, the channel used (same types as for outgoing notifications), the address of the message sender, the address of the message recipient, the message status (replied e-mail notification, unsolicited e-mail, unknown e-mail content, response not processed, and response processed), a link to the content of the message, and the time at which the message was received.
Perform the following actions on outgoing notifications.
Action | Description |
---|---|
Send Test Notification | Test that outgoing messages are arriving at the correct destination. This ensures that the destination is reachable and messages are arriving. Selecting this option invokes a dialog for specifying the following destination details:
|
Resend | Select specific outgoing notification messages in the table and click Resend to resend. Use this option if you believe that messages are not arriving at their correct destination. For example, you may have incorrectly configured a recipient address. After correcting the address, click Resend to test the delivery. |
Resend All Similar Notifications | Resend all error notification messages having the same recipient address as the selected one. |
View Bad Addresses | Click to display a list of bad or invalid addresses. The addresses are automatically removed from the bad address list after one hour. If you do not want to wait an hour, you can explicitly select and delete them. |
Delete icon | Click to delete a selected message. |
If outgoing notifications are sent to an incorrect address of a message recipient, they display as errors in the Recipient column. You can correct the recipient's address and resend the notification.
In the Recipient column, click the e-mail address and correct the address.
Perform the following actions on incoming notifications.
Action | Description |
---|---|
Mark as Spam | Mark the message sender's address of the selected notification as spam. This action prevents incoming notifications from the same sender address from being delivered again. |
No Spam | Mark incoming messages as not being spam. This action enables new messages from the sender's address to be delivered again. |
Delete icon | Click to delete a selected message. |
For more information about notifications, see Oracle Fusion Middleware Developer's Guide for Oracle SOA Suite.
You can migrate Human Workflow user metadata, such as views, flex field mappings, and vacation rules, from a test environment to a production environment using the Human Workflow User Config Data Migrator. The Data Migrator is available as an ant
target that can be executed at the command line. You specify the input parameters for the migration of data in a properties file, migration.properties
.
For example, assume you have two SOA servers installed:
SOAServer_A
A test server that includes human workflow user-configurable data (user views, standard views, user rules, group rules, attribute labels, and task payload flex field mappings).
SOAServer_B
A production server to which you want to move the data on SOAServer_A.
Since you have a significant amount of data on SOAServer_A, it can be time consuming to manually migrate all of the data to SOAServer_B.You can use the Data Migrator to move the data from the test server to the production server. You run the ant
target at the command line of SOAServer_A to migrate data to SOAServer_B.Migration is always performed through an XML file. The Data Migrator supports the following operations:
Export operation: Stores all the human workflow user-configurable data from the source SOA server to the XML file.
Import operation: Creates all the Human Workflow user-configurable data in the target SOA server by reading from the XML file.
The Data Migrator consists of the following files:
migration.properties
: Contains all required input properties in terms of key-value
pairs for migration operations.
build.xml
: Contains the ant
target runHwfMigrator
that executes the Data Migrator
Perform the following steps to move data from a test to a production environment.
Ensure that the PATH
environment variable contains the JAVA_HOME
and ANT_HOME
environment variables and that they point to the locations within the Oracle SOA Suite installation.
Create a migration.properties
file in any location to export user metadata for the worklist application (for example, group rules, views, flex field mappings, and vacation rules) from the test environment. See Section 20.6.2.1, "Migration Property File Examples" for instructions on how to specify properties.
Note the following:
You can export only nonprotected flex field mappings
You can export only protected attribute labels
You can only export one type of data at a time.
When you export data for a particular user or group, you must export each in separate operations.
You must export attribute labels before you export flex field mappings.
To export attribute labels, use the following values in the migration.properties
file:
objectType = TASK_PAYLOAD_FLEX_FIELD_MAPPING migrateAttributeLabel = true
To export flex field mappings, use the following values in the migration.properties
file:
objectType = TASK_PAYLOAD_FLEX_FIELD_MAPPING migrateAttributeLabel = false
Export the data with the ant
script. The following example shows how to invoke the command and specify the parameters:
ant -f ant-t2p-worklist.xml -Dbea.home=/scratch/oracle/MW_HOME -Dsoa.home=/scratch/oracle/MW_HOME/AS11gR1SOA -Dmigration.properties.file=migration.properties -Dsoa.hostname=hostname -Dsoa.rmi.port=7001 -Dsoa.admin.user=weblogic -Drealm=jazn.com -Dmigration.file=/tmp/export_all_userRules.xml -Dmap.file=/tmp/export_all_userRules_mapper.xml
Note:
After specifying the Admin user name, enter the password when prompted.See Section 20.6.3, "ant Script Data Migration Syntax" for instructions on specifying ant
properties.
Ensure that the application is deployed to the production system.
Create the migration.properties
file to import user metadata for the worklist application to the production environment.
Note the following:
You can only import one type of data at a time.
When you import data for a particular user or group, you must import them in separate operations.
You must import attribute labels before you import flex field mappings.
To import attribute labels, use the following values in the migration.properties
file:
objectType = TASK_PAYLOAD_FLEX_FIELD_MAPPING migrateAttributeLabel = true
To import flex field mappings, use the following values in the migration.properties
file:
objectType = TASK_PAYLOAD_FLEX_FIELD_MAPPING migrateAttributeLabel = false
Import the data to the production environment from the file export_all_userRules.xml
, which you created with the map.file
property in Step 3. The following example shows how to invoke the command and specify the properties:
ant -f ant-t2p-worklist.xml -Dbea.home=/scratch/oracle/MW_HOME -Dsoa.home=/scratch/oracle/MW_HOME/AS11gR1SOA -Dmigration.properties.file=migration.properties -Dsoa.hostname=hostname -Dsoa.rmi.port=7001 -Dsoa.admin.user=weblogic -Dsoa.admin.password=password -Drealm=jazn.com -Dmigration.file=/tmp/export_all_userRules.xml -Dmap.file=/tmp/export_all_userRules_mapper.xml
Note that if the data, such as rules and views, are attached to the user, then the user must be an available user in the production SOA server.
Deploy J2EE human task forms, as you would deploy any .ear
file.
If necessary, update the workflow notification configuration with production mail server and inbound and outbound e-mail accounts. See Section 18.1, "Configuring Human Workflow Notification Properties."
The migration.properties
file specifies the input parameters for data migration. The template for this file is located in the following directory:
The migration.properties
file contains the following input parameters:
operationType = {EXPORT | IMPORT} objectType = {VIEW | RULE | TASK_PAYLOAD_FLEX_FIELD_MAPPING} name = name of VIEW or TASK_PAYLOAD_FLEX_FIELD_MAPPING user = username of VIEW or RULE group = groupname for RULE grantPermission = {true | false} migrateAttributeLabel = {true | false} override = {true | false} skip = {true | false} migrateToActiveVersion = {true | false}
Argument | Definition |
---|---|
operationType |
Specify to perform one of the following actions:
|
objectType |
Specify the type of object to migrate:
|
name |
Specify the object name if you specified VIEW or TASK_PAYLOAD_FLEX_FIELD_MAPPING values for the objectType . This property refers to the following:
Specify |
user |
Specify the user name only if you specified the VIEW or RULE value for the objectType property. If a user is not specified for VIEW , it implies STANDARD_VIEW . |
group |
Specify this property only if you specified the RULE value of the objectType property. It identifies the group name (for example, LoanAgentGroup ). |
grantPermission |
Specify this property only if you specified the VIEW value of the objectType property.
|
migrateAttributeLabel |
Specify one of the following values:
|
override |
Specify whether to override the data on the target SOA server:
|
skip |
Specify error handling details.
|
migrateToActiveVersion | Specify a value for mapping task definition IDs.
|
This section provides examples how to configure the migration.properties
file.
The following example exports all protected attribute labels.
operationType = EXPORT objectType = TASK_PAYLOAD_FLEX_FIELD_MAPPING name = ALL user = jcooper group = grantPermission = true migrateAttributeLabel = true override = true skip = true migrateToActiveVersion = false
The following example imports all protected attribute labels.
operationType = IMPORT objectType = TASK_PAYLOAD_FLEX_FIELD_MAPPING name = ALL user = jcooper group = grantPermission = true migrateAttributeLabel = true override = true skip = true migrateToActiveVersion = false
The following example exports specific protected attribute labels.
operationType = EXPORT objectType = TASK_PAYLOAD_FLEX_FIELD_MAPPING name = cb801c91-4605-4e96-a234-aeb8441f0388 user = jcooper group = grantPermission = true migrateAttributeLabel = true override = true skip = true migrateToActiveVersion = false
The following example imports specific protected attribute labels.
operationType = IMPORT objectType = TASK_PAYLOAD_FLEX_FIELD_MAPPING name = cb801c91-4605-4e96-a234-aeb8441f0388 user = jcooper group = grantPermission = true migrateAttributeLabel = true override = true skip = true migrateToActiveVersion = false
The following example exports nonprotected task payload flex field mappings for all task definition IDs.
operationType = EXPORT objectType = TASK_PAYLOAD_FLEX_FIELD_MAPPING name = ALL user = jcooper group = grantPermission = true migrateAttributeLabel = false override = true skip = true migrateToActiveVersion = false
The following example imports nonprotected task payload flex field mappings for all task definition IDs. Task payload flex field mappings use attribute labels. As a prerequisite, find out the attribute labels involved in the task payload flex field mappings to import. These attribute labels must be available in the target SOA server before the import of nonprotected task payload flex field mappings into the target SOA server.
The recommended steps are as follows:
Import the attribute labels into the target SOA server.
Import the task payload flex field mappings into the target SOA server.
operationType = IMPORT objectType = TASK_PAYLOAD_FLEX_FIELD_MAPPING name = ALL user = jcooper group = grantPermission = true migrateAttributeLabel = false override = true skip = true migrateToActiveVersion = false
The following example exports nonprotected task payload flex field mappings for a specific task definition ID.
operationType = EXPORT objectType = TASK_PAYLOAD_FLEX_FIELD_MAPPING name = default/HelpDeskRequestComposite!1.0*c9856b8b-bc9e-46a4-8aef-698e539ba1d7/HelpDesk RequestHumanTask user = jcooper group = grantPermission = true migrateAttributeLabel = false override = true skip = true migrateToActiveVersion = false
The following example imports nonprotected task payload flex field mappings for a specific task definition ID. Task payload flex field mappings make use of attribute labels. As a prerequisite, find out the attribute labels that are involved in the task payload flex field mappings to import. These attribute labels must be available in the target SOA server before the import of nonprotected task payload flex field mappings into the target SOA server.
The recommended steps are as follows:
Import the attribute labels into the target SOA server.
Import the task payload flex field mappings into the target SOA server.
operationType = IMPORT objectType = TASK_PAYLOAD_FLEX_FIELD_MAPPING name = default/HelpDeskRequestComposite!1.0*c9856b8b-bc9e-46a4-8aef-698e539ba1d7/HelpDesk RequestHumanTask user = jcooper group = grantPermission = true migrateAttributeLabel = false override = true skip = true migrateToActiveVersion = false
This example exports all rules for a specific user. Note that the group
property is left blank when you export rules for a specific user.
operationType = EXPORT objectType = RULE name = ALL user = jcooper group = grantPermission = true migrateAttributeLabel = false override = true skip = true migrateToActiveVersion = false
This example imports all rules for a specific user. Note that the group
property is left blank when you import rules for a specific user.
operationType = IMPORT objectType = RULE name = ALL user = jcooper group = grantPermission = true migrateAttributeLabel = false override = true skip = true migrateToActiveVersion = false
This example exports all rules for a specific group. Note that the user
property is left blank when you export rules for a specific group.
operationType = EXPORT objectType = RULE name = ALL user = group = LoanAgentGroup grantPermission = true migrateAttributeLabel = false override = true skip = true migrateToActiveVersion = false
This example imports all rules for a specific group. Note that the user
property is left blank when you import rules for a specific group.
operationType = IMPORT objectType = RULE name = ALL user = group = LoanAgentGroup grantPermission = true migrateAttributeLabel = false override = true skip = true migrateToActiveVersion = false
This example exports all user views.
operationType = EXPORT objectType = VIEW name = ALL user = jcooper group = grantPermission = true migrateAttributeLabel = false override = true skip = true migrateToActiveVersion = false
This example imports all user views.
operationType = IMPORT objectType = VIEW name = ALL user = jcooper group = grantPermission = true migrateAttributeLabel = false override = true skip = true migrateToActiveVersion = false
This example exports a specific user view.
operationType = EXPORT objectType = VIEW name = jcooperUserView1 user = jcooper group = grantPermission = true migrateAttributeLabel = false override = true skip = true migrateToActiveVersion = false
This example imports a specific user view.
operationType = IMPORT objectType = VIEW name = jcooperUserView1 user = jcooper group = grantPermission = true migrateAttributeLabel = false override = true skip = true migrateToActiveVersion = false
This example exports all standard views.
operationType = EXPORT objectType = VIEW name = ALL user = group = LoanAgentGroup grantPermission = true migrateAttributeLabel = false override = true skip = true migrateToActiveVersion = false
This example imports all standard views.
operationType = IMPORT objectType = VIEW name = ALL user = group = LoanAgentGroup grantPermission = true migrateAttributeLabel = false override = true skip = true migrateToActiveVersion = false
Use the ant
script for data migration. The script is located in the following directory:
ORACLE_HOME/bin/ant-t2p-worklist.xml
The script uses the following format to migrate human workflow configurable data from one SOA server to another:
ant -f ant-t2p-worklist.xml -Dbea.home=BEA_HOME -Dsoa.home=SOA_HOME -Dmigration.properties.file=MIGRATION_PROPERTY_FILE_PATH -Dsoa.hostname=SOA_HOSTNAME -Dsoa.rmi.port=SOA_RMI_PORT -Dsoa.admin.user=SOA_ADMIN_USER -Dsoa.admin.password=SOA_ADMIN_PASSWORD -Drealm=REALM -Dmigration.file=MIGRATION_FILE -Dmigration.file=<MIGRATION_FILE> -Dmap.file=MAP_FILE
Argument | Definition |
---|---|
bea.home |
The absolute path of the installation directory for Oracle WebLogic Server. |
soa.home |
The absolute path of the Oracle SOA Suite home directory. |
migration.properties.file |
The absolute path to the migration.properties file. |
soa.hostname |
The host name of the SOA server instance.
Note: You must specify the complete domain name, such as |
soa.rmi.port |
The remote method invocation (RMI) port of the SOA server instance. |
soa.admin.user |
The Admin user name to connect to the SOA server instance. |
soa.admin.password |
The Admin user password to connect to the SOA server instance. |
realm |
The realm of the SOA server instance. |
migration.file |
The complete path location of the migration file in which all user-configurable data from the SOA server is exported to or imported from. |
map.file |
The full path location of the map file in which all the TaskDefinitionId mappings in the target SOA server are provided. This file enables you to customize the mapping. |
For example:
ant -f ant-t2p-worklist.xml
-Dbea.home=/net/myhost/jsmith/fmwhome
-Dsoa.home=/net/myhost/jsmith/fmwhome/AS11gR1SOA
-Dmigration.properties.file=migration.properties
-Dsoa.hostname=myhost.us.oracle.com -Dsoa.rmi.port=7001
-Dsoa.admin.user=weblogic
-Drealm=jazn.com
-Dmigration.file=/tmp/export_all_userRules.xml
-Dmap.file=/tmp/export_all_userRules_mapper.xml
Note:
After specifying the Admin user name, enter the password when prompted.