IBM BPM, V8.0.1, All platforms > Get started with IBM BPM > Key concepts > Bindings

Export and import binding overview

An export makes services in an integration module available to external clients. An import makes it possible for SCA components in an integration module to call external services. The binding specifies the relationship between protocol messages and business objects, and specifies the way that operations and faults are selected.


Flow of information through an export

An export receives a request, which is intended for the component to which the export is wired, over a specific transport determined by the associated binding (for example, HTTP).

When the export receives the request, the following sequence of events occurs:

  1. For WebSphere MQ bindings only, the header data binding transforms the protocol header into a header data object.

  2. The function selector determines the native method name from the protocol message. The native method name is mapped by the export configuration to the name of an operation on the interface of the export.

  3. The request data handler or data binding on the method transforms the request to a request business object.

  4. The export invokes the component method with the request business object.

    • The HTTP export binding, the web service export binding, and the EJB export binding invoke the SCA component synchronously.
    • The JMS, Generic JMS, MQ JMS, and WebSphere MQ export bindings invoke the SCA component asynchronously.

An export can propagate the headers and user properties it receives over the protocol, if context propagation is enabled. Components that are wired to the export can then access these headers and user properties.

If this is a two-way operation, the component returns a response...

The following sequence of steps occurs:

  1. If a normal response message is received by the export binding, the response data handler or data binding on the method transforms the business object to a response.

    If the response is a fault, the fault data handler or data binding on the method transforms the fault to a fault response.

    For HTTP export bindings only, if the response is a runtime exception, the runtime exception data handler, if configured, is called.

  2. For WebSphere MQ bindings only, the header data binding transforms the header data objects into protocol headers.

  3. The export sends the service response over the transport.


Flow of information through an import

Components send requests to services outside the module using an import. The request is sent, over a specific transport determined by the associated binding.

Figure 3. Flow from a component through the import to a service

The component invokes the import with a request business object.

After the component invokes the import, the following sequence of events occurs:

  1. The request data handler or data binding on the method transforms the request business object into a protocol request message.

  2. For WebSphere MQ bindings only, the header data binding on the method sets the header business object in the protocol header.

  3. The import invokes the service with the service request over the transport.

If this is a two-way operation, the service returns a response, and the following sequence of steps occurs:

Figure 4. Flow of a response back through the import

  1. For WebSphere MQ bindings only, the header data binding transforms the protocol header into a header data object.

  2. A determination is made about whether the response is a fault.

    • If the response is a fault, the fault selector inspects the fault to determine which WSDL fault it maps to. The fault data handler on the method then transforms the fault to a fault response.

    • If the response is a runtime exception, the runtime exception data handler, if configured, is called.

  3. The response data handler or binding on the method transforms the response to a response business object.

  4. The import returns the response business object to the component.

Bindings


Related information:
Propagation