This topic applies only to the IBM Business Process Manager Advanced configuration.

Invocation scenarios for BPEL processes

A BPEL process is a Service Component Architecture (SCA) component implementation. It can expose services to other partners and consume services provided by other partners. A BPEL process can be a service provider that is made available by the Business Process Choreographer APIs, an SCA service provider for other SCA service components, or an SCA client that invokes other SCA service components, including other BPEL processes.

BPEL processes as service providers that are made available by the Business Process Choreographer APIs
You can use the Business Flow Manager API to instantiate BPEL processes. These client applications can create and start BPEL process instances, and query and work with existing process instances. The Business Flow Manager API is provided as an EJB, a web service, a JMS message interface, and a REST interface that you can use to design EJB, web service, JMS, and REST clients.
Business processes as SCA service providers for other SCA service components
In this invocation scenario, a business process represents an SCA component that can be invoked by other SCA components acting as clients. As an implementation of an SCA component, services provided by a BPEL process can be invoked from SCA clients. These mechanisms include:
  • Wires for connecting an SCA client (reference) and the interface of a component that represents a business process
  • SCA qualifier settings for component references and interfaces that determine aspects, such as interaction style, transaction behavior, and interaction reliability
BPEL processes as SCA clients that invoke other SCA service components
A BPEL process can call another business process. This can be done using SCA wiring within the same module or across modules. SCA wiring statically associates a caller with another service, also known as early binding. When invoking a service offered by another process, late binding can be used to select the version of the process that is currently valid. This is done using a specification at the partner link of the calling process.
BPEL processes as SCA clients that invoke other business processes
If both the SCA client and the SCA services are represented by BPEL processes, you can select both of them on the SCA level and on the BPEL process level. On the SCA level, you can use SCA wires to connect the SCA client to SCA services. On the business process level, you can associate partner links with the names of the business processes that act as service providers.