• Call us: +91 9501707741
  • tutorialzdiary@gmail.com


SOA SUITE 11g Tutorials

Chapter 1: Introduction
Chapter 2: What is SOA Suite ?
Chapter 3: SOA Suite Architecture
Chapter 4: SOA Suite Components
Chapter 5: BPEL
Chapter 6 : Mediator
Chapter 7: Business Rules
Chapter 8: Human Task
Chapter 9: Adapters
Chapter 10: Error Handling

SOA SUITE 11g Training

Oracle SOA Suite 11g Training Course

SOA SUITE 11g Installation

Part 1: SOA Suite Server Installation
Part 2: JDeveloper Installation
Part 3: Start and Stop Server

SOA SUITE 11g Interview Questions and Answers

Part 1: SOA Suite Basics
Part 2: Installation
Part 3: SOA Suite Architecture
Part 4: BPEL
Part 5: Mediator
Part 6: Business Rules
Part 7: Human Task
Part 8: MDS
Part 9 : Adapters
Part 10 : File and FTP Adapter
Part 11 : Database Adapter
Part 12 : JMS Adapter
Part 13 : Error Handling
Part 14 : Security-OWSM

Chapter 10: Error Handling

Error or Fault occurs when web services return data other than what is normally expected. E.g. web service return error message instead of credit card status. In Oracle SOA Suite, mainly we have two types of faults.

Types Of Error

Types Of Error

Business Faults:

When we have error or fault based on Business functions, it is known as business faults. e.g. Invalid credit card number, Invalid age etc. These faults are user defined and application specific.

Technical (Runtime) Faults:

Runtime faults are the result of problems within the running of the BPEL process service component or web service. These faults are not user-defined, and are thrown by the system. Below are the most commonly faced runtime faults in SOA Suite tool.

bindingfault: A bindingFault is thrown inside an activity if the preparation of the invocation fails. For example, the WSDL of the process fails to load. A bindingFault is not retryable. This type of fault usually must be fixed by human intervention.

remoteFault: A remoteFault is also thrown inside an activity. It is thrown because the invocation fails. For example, a SOAP fault is returned by the remote service.

In BPEL, we have some standard faults defined. these defined by WS-BPEL specifications and these are not associated with a message type or WSDL message, and can be caught without a fault variable. These faults are thrown by the systems.

In Oracle SOA Suite, we can handle the faults by following ways.

Types Of Error Handler

Types Of Error Handler

Catch Blocks

We use Catch & CatchAll blocks to handle the faults at BPEL component level. we use Catch block to handle specific fault like to handle remote fault and we use CatchAll block when we don’t know about fault as this block handle all the faults.

We can have only one CatchAll block in one BPEL process but we can have more than one Catch block in BPEL process. If we have both Catch & CatchAll block in one BPEL then Catch block executed first.

Fault Handling Framework

This is another way to handle the faults in Oracle SOA suite. Main difference between these two methods is that, in Catch Block we can only handle error at BPEL level as we can’t apply these block in other components. e.g. to handle errors in Mediator component we use Fault Handling framework not Catch blocks.

Fault handling framework only handle faults that occurs during runtime in an invoke activity in a process, the framework catches the fault and performs a user-specified action defined in a fault policy file associated with the activity.

We need following two files that for policy driven fault handling:

fault-policy.xml: This file defines one or more fault Policies with conditions and actions. In this file we define what type of error we want to handle and what action we need to perform when that fault occur. In one file, we can define more than one policy as each policy will have one unique id.

fault-bindings.xml: This file associates a policy with a composite application, a component, or a reference.


Training Enquiry