Oracle® Fusion Middleware Infrastructure Components and Utilities User's Guide for Oracle Application Integration Architecture Foundation Pack 11g Release 1 (11.1.1.6.3) Part Number E17366-08 |
|
|
PDF · Mobi · ePub |
This chapter provides an introduction to the Oracle AIA Error Handling Framework. It also provides overviews about business faults, BPEL and Mediator system faults, and Oracle B2B errors.
The Oracle AIA Error Handling Framework provides error handling and logging components to support the needs of integration services operating in an Oracle Application Integration Architecture (AIA) ecosystem.
This chapter includes the following sections:
Section 13.1, "Introduction to the Error Handling Framework"
Section 13.2, "Introduction to Error Handling for Business Faults"
Section 13.3, "Introduction to Error Handling for BPEL and Mediator System Faults"
Section 13.4, "Introduction to Error Handling for Oracle B2B Errors"
This section includes the following topic: Section 13.1.1, "Fault Categories."
Figure 13-1 provides a high-level overview of the Error Handling Framework.
The AIA Error Handling Framework provides the following key features for integration services operating in an AIA ecosystem.
Unified Error Handling Approach
Works across technologies, including BPEL and Mediator components, business-to-business (B2B), and ODI.
Works across categories of faults, including business and system, run-time, and technical faults.
Works across integration patterns.
Adopts the Oracle SOA Suite 11g tech stack.
Error Notifications
Error notifications are emailed to suitable actor roles, such as integration administrators, and FYI roles, such as customer service representatives.
Provides visibility into error context.
Drill-down to the Oracle Enterprise Manager Console Flow Trace page from the error notification email.
View errors in the context of an AIA flow trace.
Enables customization of error notification content.
Add key fields to the error notification body.
Add or remove fields from error notification content.
Issue error notifications to suitable Actor and FYI roles.
Provide a link to Oracle BPM Worklist for error details, if desired.
Enables error notification throttling.
Control the number of error notifications issued for a specific error.
Regulate the issuance of error notifications by time interval and number of errors.
Oracle BPM Worklist Integration
Centralized user interface to access error details that are assigned for resolution or for informational purposes.
Accessible to administrators and end-users.
Decoupled from the Error Notification Framework.
Oracle BPM Worklist is not tied to error notifications.
Oracle BPM Worklist can be used as an optional component.
Error Logging
Logs messages non-intrusively in a consistent schema.
Logs can be searched, sorted, and filtered using Oracle Enterprise Manager.
B2B Error Handling
Errors in the Oracle B2B component of Oracle Fusion Middleware are routed to the AIA Error Handling Framework.
The AIA fault definition captures B2B-specific details of a failed AIA flow.
Extensible Framework
Ability to extend error handling capabilities.
Automated error actions.
Ability to automatically acts upon the errored object to provide automated retry actions, error notifications, and logging.
Error actions, including retry, rethrow, replay, abort, Java action, and human-intervention.
There are two categories of faults:
Business faults
Business faults are generated when there is a problem with the information being processed. For example, a credit card number is invalid.
Error actions for business faults that are internal to BPEL are configured in catch blocks. These are business faults that are thrown by a throw activity. Error notifications and logging for these business faults are handled by AIAAsyncErrorHandlingBPELProcess.
Error actions for business faults from external applications and services are configured using the Composite Fault Policy Framework. These are business errors that are returned by an invoked service or application when using a BPEL invoke activity. Error notifications and logging for these business faults are handled by oracle.apps.aia.core.eh.CompositeJavaAction.
System faults
System faults occur as a result of problems within the running of the BPEL process or Mediator service component. For example, data cannot be copied properly because the variable name is incorrect or because of transformation errors.
Error actions for system faults are configured using the Composite Fault Policy Framework. Error notifications and logging for system faults are handled by oracle.apps.aia.core.eh.CompositeJavaAction.
This section discusses error handling for two types of business faults:
Local business faults
Remote business faults
Local Business Faults
If a BPEL process or Mediator component needs to issue a business error, such as a validation error, the process must be developed to issue the error explicitly, catch it in a catch block, and invoke the AIAAsyncErrorHandlingBPELProcess. The input to the process is a fault message in the AIA fault message schema. This is also true for business errors for Oracle Data Integrator, Oracle Service Bus, third-party B2B, and other external systems that want to leverage the AIA Error Handling and Logging framework.
Remote Business Faults
If an invoked service or application responds to a request with a business fault, the Oracle SOA Suite captures these types of errors using the Composite Fault Policy Framework. The AIA Error Handling framework provides a custom Java action, oracle.apps.aia.core.eh.CompositeJavaAction, which can be configured as the Java action for all policies.
By configuring fault policies to include this Java action, the AIA Error Handling framework can perform all necessary error logging and notifications.
For more information, see "Configuring Oracle AIA Processes for Error Handling and Trace Logging" in Oracle Fusion Middleware Developer's Guide for Oracle Application Integration Architecture Foundation Pack.
These types of errors are captured using the Composite Fault Policy Framework. The AIA Error Handling framework provides a custom Java action, oracle.apps.aia.core.eh.CompositeJavaAction, which can be configured as the Java action for all policies.
By configuring fault policies to include this Java action, the AIA Error Handling framework can perform all necessary error logging and notifications.
For more information, see "Configuring Oracle AIA Processes for Error Handling and Trace Logging" in Oracle Fusion Middleware Developer's Guide for Oracle Application Integration Architecture Foundation Pack.
For more information about the Composite Fault Policy framework, see "Using Fault Handling in a BPEL Process" in Oracle Fusion Middleware Developer's Guide for Oracle SOA Suite.
The Oracle AIA Error Handling Framework is automatically triggered when there is an error in Oracle B2B.
Oracle B2B can encounter errors while exchanging B2B documents with trading partners. Some common reasons for errors in the Oracle B2B layer include the following scenarios:
Failure of document schema validation in the B2B layer.
Incorrect or missing trading partner agreements in Oracle B2B.
Incorrect or missing document-type definitions in Oracle B2B.
Network errors or unavailability of a trading partner system.
Authentication failures, for example invalid digital certificates, and so forth.
Note:
Business process failures, such as an order being rejected by the trading partner if the ordered item is not in stock, are not considered to be Oracle B2B errors. Response or acknowledgment messages from trading partner applications containing these failures are treated as independent flows.
When Oracle B2B encounters these system errors, its default behavior is to publish the error to the Oracle Advanced Queuing (AQ) queue defined in the Oracle B2B infrastructure schema.
The details of the AQ to which Oracle B2B posts errors are covered in Table 13-1.
Table 13-1 Oracle B2B Error AQ Details
Queue Name | IP_IN_QUEUE |
---|---|
Database Schema |
SH_SOAINFRA |
Queue Consumer |
b2berroruser |
Data Source |
jdbc/SOADatasource |
Figure 13-2 illustrates the way in which the AIA error handling framework captures B2B errors:
These errors can be viewed in error reports available in the Oracle B2B console.
For more information about viewing Oracle B2B error reports, see Chapter 19, "Accessing Oracle B2B Errors."
For Oracle B2B inbound and outbound flows, when an error occurs within the Oracle B2B server and not in the AIA layer, the AIA fault has the capacity to capture only the B2B-specific details.
Enterprise Business Message (EBM) details will not be available. However, in the case of an error in an outbound flow, AIA is able to track the EBMID and include that information in the fault.