BPEL - Introduction

SOA or the Service Oriented Architecture is an architectural approach, which makes use of technology to present business processes as reusable services.

  • It is focused on the business and enables process transformation to new levels of integration, visualization, monitoring, and optimization.

  • It is not a technology, it is a concept and a strategy for using technologies to build business automation solutions.

We will now see what BPEL is and how it helps in the SOA.

What is BPEL?

Business Process Engineering Language is a technology used to build programs in SOA architecture.

Adding a BPEL Process Service Component

Follow these steps to add a BPEL Process Service Component −

  • From the Application Navigator, select File > New > Applications > SOA Application.

  • This starts the Create SOA Application wizard.

  • In the Application Name dialog, enter an application name in the Application Name field.

  • In the Directory field, enter a directory path in which to create the SOA composite application and project.

  • Click Next.

  • In the Project Name dialog, enter a name in the Project Name field.

  • Click Next.

  • In the Project SOA Settings dialog, select Composite with the BPEL Process.

  • Click Finish.

Files in the BPEL Composite

The BPEL composite contains the following files −

  • composite.xml − This file describes the entire composite assembly of services, service components, references, and wires.

  • .bpel − This file contains the set of activities added to the process.

  • .componentType − This file describes the services and references for the BPEL process service component.

  • .wsdl − This file defines the input and output messages for this BPEL process flow, the supported client interface and operations, and other features.

Files in the BPEL Composite

Concepts used in the BPL process

In this section, we will learn the different concepts involved in the BPL process.


    Usually used in private business processes.
  • A central process (which can be another Web service) takes control of the involved Web services.

  • Coordinates the execution of different operations on the web services involved in the operation.

  • The involved Web services do not "know" (and do not need to know) that they are involved in a composition process and that they are taking part in a higher-level business process.
  • Only the central coordinator of the orchestration is aware of this goal, so the orchestration is centralized with explicit definitions of operations and the order of invocation of Web services.



  • Does not rely on a central coordinator.

  • Each Web service involved in the choreography knows exactly when to execute its operations and with whom to interact.

  • Each Web service involved in the choreography knows exactly when to execute its operations and with whom to interact.

  • All participants in the choreography need to be aware of the business process, operations to execute, messages to exchange, and the timing of message exchanges.