This chapter describes how to manage BPMN process service components and service engines.
This chapter includes the following topics:
Section 39.1, "Recovering from BPMN Process Service Component Faults"
Section 39.2, "Managing BPMN Process Service Component Policies"
Section 39.3, "Recovering from BPMN Process Service Engine Faults"
Section 39.4, "Performing BPMN Process Service Engine Message Recovery"
You can monitor and perform individual and bulk fault recoveries for BPMN process service components that are identified as recoverable. For BPMN process faults to be identified as recoverable, there must be a fault policy defined that is bound to the fault (through the fault-bindings.xml
file) and which triggers the action ora-human-intervention
. However, without defining any fault policies, the fault takes its normal course as either a recoverable or nonrecoverable fault.
To recover from BPMN process service component faults:
Access this page through one of the following options:
From the SOA Infrastructure Menu... | From the SOA Folder in the Navigator... |
---|---|
|
|
In the Component Metrics section, select the BPMN process service component.
Click Faults.
The Faults page displays the following details:
A utility for searching for a specific fault by specifying criteria and clicking Search. Click the Help icon for details.
Faults that occurred in the service component, including the fault ID, error message, whether you can recover from the fault, time at which the fault occurred, service component instance ID, activity in which the fault occurred, and a link to a log file describing the fault.
BPMN process service component faults identified as recoverable can be recovered.
Select faults for recovery using one of the following methods. Fault recovery selection at the BPMN process service component level equals the SOA Infrastructure level, SOA composite application level, and Oracle Mediator service component level.
For... | Then... |
---|---|
Single fault recovery |
There are three options from which to choose for single-fault recovery:
|
Bulk fault recovery |
There are two options from which to choose for bulk-fault recovery:
|
Recovery of all faults |
|
Note:
In most cases, fault policy actions are automatically executed. The only exception is if you defined a fault policy that uses the action ora-human-intervention
. This action creates a recoverable fault that can be recovered from Oracle Enterprise Manager Fusion Middleware Control.
Select an action from the Recovery Action list.
Action | Description |
---|---|
Retry |
Retries the instance directly. An example of a scenario in which to use this recovery action is when the fault occurred because the service provider was not reachable due to a network error. The network error is now resolved. |
Abort |
Terminates the entire instance. |
Replay |
Replays the entire scope again in which the fault occurred. |
Rethrow |
Rethrows the current fault. BPMN fault handlers (catch branches) are used to handle the fault. By default, all exceptions are caught by the fault management framework unless an explicit rethrow fault policy is provided. |
Continue |
Ignores the fault and continues processing (marks the faulting activity as a success). |
Perform the following additional monitoring tasks from within the faults table:
Click the Show only recoverable faults checkbox 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 is also displayed 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). Rejected messages do not have a component instance ID.
In the Logs column, click a link to access the Log Messages page with filtered messages specific to that instance.
For more information, see the following documentation:
You can attach and detach policies to and from BPMN process service components in 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 BPMN process 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 BPMN process service component in the Component Metrics section.
Click Policies.
The Policies page enables you to attach and detach policies to and from BPMN process service components. 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 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 is displayed in the policies table.
For more information, see the following documentation:
Section 7.6, "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 monitor and perform individual and bulk recoveries of faults occurring in BPMN process service engines that are identified as recoverable. All BPMN process service component faults, regardless of the SOA composite application instance of which they are a part, can be viewed in the BPMN process service engine. For BPMN process faults to be identified as recoverable, there must be a fault policy defined that is bound to the fault (through the fault-bindings.xml
file) and which triggers the action ora-human-intervention
. However, without defining any fault policies, the fault takes its normal course as either a recoverable or nonrecoverable fault.
To recover from BPMN process service engine faults:
Access this page through one of the following options:
From the SOA Infrastructure Menu... | From the SOA Folder in the Navigator... |
---|---|
|
|
Select the Faults tab.
The Faults page displays the following details:
A utility for searching for a specific fault by specifying criteria and clicking Search. Click the Help icon for details.
Faults that occurred in the 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 service component in which the fault occurred, and the service component instance ID.
BPMN process service engine faults identified as recoverable can be recovered.
As with fault recovery at the SOA Infrastructure level, SOA composite application level, and Oracle Mediator service component level, you can perform single fault recovery, bulk fault recovery, and recovery of all faults. See Step 4 of Section 39.1, "Recovering from BPMN Process Service Component Faults" for instructions on selecting faults to perform these types of recovery.
Note:
In most cases, fault policy actions are automatically executed. The only exception is if you defined a fault policy that uses the action ora-human-intervention
. This action creates a recoverable fault that can be recovered from Oracle Enterprise Manager Fusion Middleware Control.
Select an action from the Recovery Action list.
Action | Description |
---|---|
Retry |
Retries the instance with an option to provide a retry success action. An example of a scenario in which to use this recovery action is when the fault occurred because the service provider was not reachable due to a network error. The network error is now resolved. |
Abort |
Terminates the entire instance. |
Replay |
Replays the entire scope again in which the fault occurred. |
Rethrow |
Rethrows the current fault. BPMN fault handlers (catch branches) are used to handle the fault. By default, all exceptions are caught by the fault management framework unless an explicit rethrow fault policy is provided. |
Continue |
Ignores the fault and continues processing (marks the faulting activity as a success). |
Perform the following additional monitoring tasks from within the faults table:
Click the Show only recoverable faults checkbox to only display 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 is also displayed 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). Rejected messages do not have a component instance ID.
For more information, see the following sections:
Section 1.4.3.1, "Introduction to Fault Recovery" for conceptual details about faults.
Section 8.4.2, "Examples of Fault Recovery for BPMN Processes"
You can perform a manual recovery of undelivered invoke or callback messages due to a transaction rollback in the process instance. Recovery of invoke messages applies to asynchronous BPMN processes only. Synchronous BPMN processes return an error to the calling client and are not recoverable from this page. Recoverable activities are activities that failed and can be recovered. For example, if you are using the file adapter to initiate an asynchronous BPMN process and your system crashes while the instance is processing, you can manually perform recovery when the server restarts to ensure that all message records are recovered.
Note:
If you encounter the error message ORA-01000: maximum open cursors exceeded
, then do the following:
Shut down the Oracle database.
Increase the value of OPEN_CURSORS
to 1500.
Restart the Oracle database.
To perform BPMN process service engine message recovery:
Access this page through one of the following options:
From the SOA Infrastructure Menu... | From the SOA Folder in the Navigator... |
---|---|
|
|
Click Recovery.
The Recovery page displays the following details:
A utility for searching for a specific message failure by specifying criteria and clicking Search. Click the Help icon for details.
Message failure in the service engine, including the conversation ID, whether you can recover from the message failure, the service component and composite application in which the failure occurred, and the time at which the fault occurred.
Select a fault in the table.
Select one of the following options:
Action | Description |
---|---|
Recover |
Retries the message in which the fault occurred. If an asynchronous BPMN process encounters a transaction rollback scenario because of any underlying exception error, it rolls back to the last dehydration activity. If this is a new instance, and a receive activity was the first dehydration activity, the BPMN process service engine creates a recoverable invoke. When you click Recover to recover the invoke, the service engine creates a new instance. This instance may run to completion with no exception error. However, you continue to see the older instance identified as faulted. |
Mark Cancelled |
Marks the message so it is never delivered. |
Once a message is submitted for recovery, the BPMN process service engine may take time to complete the action. This typically takes less than several seconds. During this time, the message remains visible in the Recovery page. Duplicate attempts to recover the same message in that period are ignored. Refresh the page every few seconds to receive the latest recovery status.