Basic application development concepts
What types of resources can I develop?
- Message flows
A message flow is a sequence of processing steps that run in the integration node when an input message is received. You define a message flow by including a number of message flow nodes, each of which represents a set of actions that define a processing step. For more information about message flow nodes, see message flow nodes.
- Message models
You can define the structure of messages for use with your message flows.
What is IBM Integration Bus typically used for?
How can I use IBM Integration Bus to route messages?
You can select from a number of ways of routing messages using message flows:
- Using a Filter node
You can route messages through a message flow based on the content of the message using a Filter node. The nodes that are connected to the different terminals of the Filter node can be used to apply different processing and routing to messages based on their content.
- Using a Route node
You can route messages through different paths in a message flow, based on the content of the message using a Route node. The Route node uses XPath expressions to control processing.
- Using the destination list to route
You can create a destination list to define the recipients of output messages using a Compute, Mapping, or JavaCompute node. This list can then be used to route messages using RouteToLabel and Label nodes. Alternatively, a single message can be sent to many locations using a destination list for the destination mode, on some output nodes.
- Using a Filter node
- How can I use IBM Integration Bus to
transform and enrich messages?
You can select from a number of different ways of transforming and enriching messages using different nodes in message flows. Messages can be enriched with content from databases, applications, and files. The following methods of programming nodes in your message flows can be used to transform messages:
IBM Integration Bus supports various database managers so that you can configure your integration nodes to interact with databases on behalf of your message flows. Follow this link to get instructions on how to create and configure databases and connections.
Extended Structured Query Language (ESQL) is a programming language based on Structured Query Language (SQL) that is typically used to work with databases. ESQL is extended to access and manipulate data in messages and databases. You can code ESQL to transform and enrich messages using the Compute node.
Use the JavaCompute node to add valid Java code to your message flow. You can access, create, and transform messages in your message flows by using Java.
- Graphical Mapping overview
Message mappings use a drag-and-drop interface to transform messages. You can use conditional logic, ESQL functions, Java functions, and XPath functions to create complex mappings and transformations. You can also use message mapping to select and manipulate data in database tables. You can create message mappings to transform and enrich messages using the Mapping node.
- XML transformation
You can use the XSLTransform node to transform from one type of XML message to another, based on rules provided by an Extensible Stylesheet Language (XSL) style sheet.
How can I use IBM Integration Bus with web services?
IBM Integration Bus provides a number of ways to work with web services:
- IBM Integration Bus and web services
Find out how IBM Integration Bus can be used to integrate applications using web services.
- Web services scenarios
Find out about the different web services scenarios that IBM Integration Bus supports.
- Processing web service messages
Find out more about working with web services in IBM Integration Bus.
- IBM Integration Bus and web services
How can I connect my applications?
Use the links in this section to find out how you can connect your applications to IBM Integration Bus.
- What are the application communication
Find out about the differences between the two types of application communication model that IBM Integration Bus supports.
- What application programming interfaces
Find out about the many programming interfaces supported by IBM Integration Bus.
- Connecting applications
Find out about the communication transports and protocols that IBM Integration Bus supports.
- Publish/subscribe overview
Publish/subscribe is a style of messaging in which the providers of information (publishers) are decoupled from the consumers of that information (subscribers).
What is a logical message tree?
Use the links in this section to find out about the logical message tree and the internal representation of messages within message flows. When a message is received by a message flow, a logical structure is created, known as the logical message tree or the message assembly. The message assembly contains a message tree, which is the internal representation of the physical message, and a number of other trees that are used to store information during the processing of the message in the message flow.
- What is the logical message tree? Use this link to get more information about the logical message tree and how it is used in application development. You can get information about the four subtrees from the following links:
- How is the message tree populated?
Follow this link to get detailed information about how the message tree is populated when a message enters a message flow, and how the structure of the message tree is affected by the transport protocol that the message is received on.
What are message formats?
Use the links in this section to get information about the physical messages received by message flows, and to find out how the different structures and formats are handled by your applications.
- What are the differences between predefined
and self-defining messages?
Find out about the differences between predefined and self-defining messages in IBM Integration Bus. The design of your applications can be influenced by your decision to use predefined or self-defining messages. If you use predefined messages, you must create a message model to define the logical message structure to be used by the nodes in your message flows, but you can use self-defining messages instead, or as well.
- Why model messages?
Find out about the benefits of modeling messages, even if you use self-defining messages in your system.
- Where can I find an introduction to
Follow this link to get introductory information about message modeling.
- What is a parser?
A parser is used to interpret the physical structure of an incoming message and create an internal representation of the message in a tree structure - the logical message tree. Follow this link to get an introduction to parsers.
- Which message domain and format can
A message model has one or more domains that determine which parser is used to construct the logical tree structure from the physical message. Follow this link for guidance on selecting a domain and parser for your message model.
Advanced application development concepts
What other resources can I develop?
- Developing message flows that use WebSphere Adapters
You can develop applications that connect to an Enterprise Information System (EIS) using WebSphere Adapters.
- User-defined extensions overview
A user-defined extension is an optional component that is designed by the user to extend the functions provided by IBM Integration Bus. A user-defined extension can be either a node or a parser.
- Custom integration applications
The IBM Integration API is an application programming interface (API) that you can program to control integration nodes by using a remote interface to the appropriate integration node.