Connectors overview

A connector helps IBM® Integration Bus to interact with external applications or data sources.

Companies often build their own internal applications to which they want to connect. You can connect through web services, or access data directly from a database to connect to applications. However, you can also use the connector framework to develop a connector for a specific application or technology. You can use the connector framework to build reusable connectors that are not already available, reducing the need to build these interactions manually every time you need them. A connector can encapsulate complex interactions that you would otherwise achieve by using multiple message flow nodes.

You might need to use a connector in the following circumstances:
  • You need to connect to an external system by using a proprietary protocol that is not supported by IBM Integration Bus.
  • A remote system publishes events over HTTP by using stateful, connection-oriented protocols such as XMPP or SIP. In this case, the standard IBM Integration Bus HTTP nodes are not sufficient because they are stateless.
  • Data from an earlier database that uses a non-standard client API or library must be integrated with later systems by using IBM Integration Bus.

Connectors

Connectors take one of three forms, depending on the style of interaction that they use:
Input connector

Input connectors listen for external events or receive data from external sources. These connectors constitute the starting point of a message flow. Polling for input is a special case of an input connector that is supported in the connector framework.

Output connector

Output connectors send data or publish events to external systems without expecting to receive a response.

Request connector

Like output connectors, request connectors send data, but expect to receive a response in return.

Connectors for a particular application or technology are Java™ classes, which are packaged as a JAR file. This JAR file also contains the following resources:
  • A factory class to create the connectors for that application or technology
  • Supporting classes or Java libraries that are required to make the connectors function as required
  • An XML descriptor file
A JAR file that provides connectors for a particular application or technology is called a connector provider.

Hosting connectors

Connectors constitute the runtime part of connecting to external systems or applications. You deploy connectors by installing the connector runtime files on an integration node (see Installing a connector in IBM Integration Bus).

During initialization, connectors get services, such as logging and security, from IBM Integration Bus. A standard Java logger is provided to all connectors to allow the connector to use the logging and trace framework of IBM Integration Bus.

To use connectors in IBM Integration Bus, you must also create a user-defined node to expose the capabilities of the connector to a message flow.