What's new in Version 10.0?

Learn about the main new functions in IBM® Integration Bus Version 10.0.

IBM Integration Bus is a compatible evolution of WebSphere® Message Broker that is designed to incorporate features that are found in WebSphere Enterprise Service Bus. IBM Integration Bus provides a universal integration capability that addresses a wide range of integration scenarios. These scenarios include web services such as SOAP and REST, messaging, database, file, ERP systems, mobile, physical devices, email, custom systems and more.

For details of the new features in IBM Integration Bus Version 10.0, see the following sections.

If you are migrating from WebSphere Message Broker Version 8.0, also see What else is new if you are migrating from Version 8.0?.

If you are migrating from WebSphere Message Broker Version 7.0, also see What else is new if you are migrating from WebSphere Message Broker Version 7.0?.

If you are migrating from WebSphere Enterprise Service Bus, also see What's new in IBM Integration Bus for WebSphere Enterprise Service Bus users?.

Simplicity and productivity

Simplified process for installation
The process to deploy and configure IBM Integration Bus so that an integration developer can use the IBM Integration Toolkit to start creating applications is simplified and quicker to complete. The installation process includes the following improvements:
  • The installation process is simplified. On Windows and Linux®, there is a single installation process that deploys both the runtime environment and IBM Integration Toolkit. On Windows, you run the installer, accept the license, and (optionally) change the location for the installation. On Linux, the installation is a simple unpack of the code into an appropriate directory.
  • On Linux and UNIX, the installation automatically includes the IBM Integration ODBC Database Extender code; you do not have to install this manually after you install IBM Integration Bus.
  • A local integration node and integration server are automatically created the first time that you start the IBM Integration Toolkit. There is no need to run the Default Configuration Wizard that is provided with previous versions of the IBM Integration Toolkit.
  • The local integration node and integration server are automatically started whenever the IBM Integration Toolkit is started.
  • Language packs for the IBM Integration Toolkit are available online and can be downloaded and installed separately; see Installing language packs for the IBM Integration Toolkit.

For more information, see Installing IBM Integration Bus software.

Tutorials Gallery

The Tutorials Gallery is included with the IBM Integration Toolkit, and is accessible from the Welcome page and from the Help menu. The Tutorials Gallery provides access to a number of tutorials that are stored on a GitHub repository, and automatically displays new tutorials when they are added to the GitHub repository.

From the Tutorials Gallery you can download, deploy, and test sample integration solutions, and then explore the configuration of the solution components to learn how to develop integration solutions of your own.

Shared libraries

Shared libraries are introduced to share resources between multiple applications. Libraries in previous versions of IBM Integration Bus are static libraries.

If you use a static library to contain resources, each application that references that static library is deployed with its own private copy of that library. If a static library is updated, each application that references it must be redeployed with the updated static library. A shared library is deployed directly to an integration server. Any application can reference the resources in that deployed shared library. If that shared library is updated, the changes are immediately visible to all referencing applications.

For more information, see Shared libraries.

Processing MQ Telemetry Transport messages

MQ Telemetry Transport (MQTT) is a lightweight publish/subscribe messaging protocol. You can now use IBM Integration Bus to connect to applications and devices that send and receive messages by using the MQTT messaging protocol.

You can create message flows to receive an MQTT message by using the MQTTSubscribe node to subscribe to one or more topics on an MQTT server. You can send an MQTT message by using the MQTTPublish node in your message flow to publish messages to a topic on an MQTT server.

For more information, see Processing MQTT messages.

Removal of the WebSphere MQ prerequisite

WebSphere MQ is no longer a prerequisite for using IBM Integration Bus on distributed platforms, which means that you can develop and deploy applications independently of WebSphere MQ. You can also run and administer integration nodes without requiring the WebSphere MQ Explorer.

When you purchase a license for IBM Integration Bus, your license entitles you to install and use WebSphere MQ with IBM Integration Bus, enabling you to use the IBM Integration Bus capabilities that require MQ functionality, such as the MQ nodes and event driven processing capabilities such as message aggregation and sequencing.

For more information about using WebSphere MQ with IBM Integration Bus, see Enhanced flexibility in interactions with WebSphere MQ.

If you are not using WebSphere MQ with IBM Integration Bus, you can use the built-in MQTT pub/sub broker or an external MQTT server to publish integration node event messages. If you have installed WebSphere MQ, you can use the built-in MQTT broker, an external MQTT server, or a queue manager as your pub/sub broker. For more information about using MQTT for publish/subscribe functions, see Event monitoring and Configuring the built-in MQTT pub/sub broker.

Flexible interaction with WebSphere MQ

On distributed systems, support for WebSphere MQ has been extended, introducing greater flexibility in the interactions between IBM Integration Bus and WebSphere MQ. You can configure local or client connections to WebSphere MQ, enabling your integration nodes to get messages from or put messages to queues on any local or remote queue manager. On z/OS®, you can have MQ message flow nodes connect to different local queue managers, not just the queue manager that is specified on the integration node.

You can specify a connection from an MQ node to a specific local or remote queue manager by using connection properties on the MQ node, including the destination queue manager name, host name, port, and channel. Alternatively, you can specify a queue manager on the integration node to be used for MQ processing that is required by flows in the integration node; the queue manager that you specify is then used for all message flow nodes that do not have queue manager connections explicitly defined or policies attached. For more information about policies, see Operational policy.

You can also create message flows that contain multiple MQInput and MQOutput nodes, each of which can access different queue managers as specified in the node; this enables you to adapt your message flows to your existing WebSphere MQ topologies. For more information about local and client connections between WebSphere MQ and IBM Integration Bus, see Configuring connections to WebSphere MQ.

Flexible administration security

You can choose between two modes of authorization when you enable administration security on an integration node: file-based authorization (file mode) or queue-based authorization (mq mode). You can specify your chosen authorization mode by using the mqsichangeauthmode command. If you configure the integration node to use file mode, you can set file-based permissions for accessing integration nodes and resources. These permissions are set using the mqsichangefileauth command. Alternatively, if you have installed WebSphere MQ and specified a queue manager on the integration node, you can control access to the integration node and its resources by setting permissions on WebSphere MQ authorization queues.

For more information, see Configuring administration security to use file-based, queue-based, or LDAP authorization.

Secured connections to WebSphere MQ

When you configure a connection from an MQ node to a WebSphere MQ queue manager, you can optionally configure the connection to use a security identity for authentication, SSL for confidentiality, or both. The security identity, which passes user name and password security credentials to the queue manager, can be used on connections to local or remote queue managers. For connections to remote queue managers, you can choose whether to use the SSL protocol to provide confidentiality on the client connection. IBM Integration Bus supports a subset of the SSL functionality that is supported by WebSphere MQ. For more information, see Connecting to a secured WebSphere MQ queue manager.

mqsireportdbparms command

You can return a list of parameters that are set on an integration node. In addition, you can use the mqsireportdbparms to check if security credentials are set, or identify if you are using the correct password for an integration node.

For more information about using the mqsireportdbparms command, see mqsireportdbparms command.

Direct access to online help from the IBM Integration Toolkit
By default, the IBM Integration Toolkit is now configured to use the online product documentation to provide context-sensitive help from the latest information that is available.
Note: The latest information might include updates that are introduced in fix packs that you have not deployed, and therefore contain details of function that is not available to you.
If you cannot access online product documentation, you can download and install a local source of product documentation. For information about local documentation options, see Adding documentation to the IBM Integration Toolkit. For more information about context-sensitive help, see Context-sensitive help.

Additional administration tasks can be configured by using the web user interface
In addition to the administration tasks that were available in IBM Integration Bus Version 9.0, you can now perform the following tasks by using the web user interface:
  • Create, rename, start, stop, and delete integration servers.
  • Deploy integration solutions.
  • Start, stop, manage, and delete deployed resources.
  • View, create, edit, and delete configurable services.
  • Create, retrieve, update, and delete operational policies.
  • Collect and view resource statistics for your integration servers.

For more information, see IBM Integration Bus web user interface.

Test your message flows by using the Flow Exerciser
To check that a message flow is processing messages as expected, you can send messages to the flow, see the path that each message took, and view the structure and content of the logical message tree at any point in a message flow.

For more information, see Testing your message flow by using the Flow Exerciser.

Fixed naming for DataDirect ODBC database drivers

On Linux and UNIX, ODBC database drivers now have a fixed naming convention, which means that you do not have to update links to drivers and switch files after you update to a later version.

On Windows, the ODBC database driver names are:
  • IBM Integration Bus 10.0.0.n - DataDirect Technologies 64-BIT Sybase Wire Protocol
  • IBM Integration Bus 10.0.0.n - DataDirect Technologies 64-BIT Oracle Wire Protocol
where n is the level of the installed fix pack.

For more information, see Updating ODBC definitions when you migrate to IBM Integration Bus Version 10.0.

Develop integration solutions by using REST APIs
You can now use REST APIs to create your integration solutions.

For more information about REST APIs, see Developing integration solutions by using REST APIs.

Universal and independent

Connector framework
A connector is a type of user-defined extension that facilitates connection between IBM Integration Bus and an external system, or endpoint. You can use the connector framework to create a connector and a user-defined node that can be used in a message flow.

For more information about connectors, see Developing connectors.

Integration service JavaScript client API
An integration service developer can generate a JavaScript client API from an existing integration service. The JavaScript client API provides operation functions that a JavaScript developer can call from a program that is running in a JavaScript environment. For more information about the integration service JavaScript client API, see Integration service JavaScript client API.

Microsoft SQL Server support for recording and replaying data
You can configure a Microsoft SQL Server database to be used as a data store for recording and replaying data. When the database has been configured, you can select a data capture store that is configured to use an SQL Server database and view the recorded data.

For more information about configuring an SQL Server database, see Creating and configuring a Microsoft SQL Server database for recording data.

Integrated security enhancements for HTTP and SOAP nodes
You can now configure the HTTP and SOAP nodes to use the transport-level security protocols NT Lan Manager (NTLM), Kerberos, and Simple and Protected Negotiation (SPNEGO). These protocols are collectively known as Integrated Windows Authentication (IWA).

For more information about IWA, see Integrated Windows Authentication.

Cross-Origin Resource Sharing support for integration server HTTP listeners (HTTP and SOAP nodes)
You can now configure the integration server HTTP listeners so that they respond to Cross-Origin Resource Sharing (CORS) requests. Enable this functionality if you want to permit client side JavaScript code running in a web browser to make HTTP requests to HTTP services that you have deployed to IBM Integration Bus.

For more information about CORS, see Cross-Origin Resource Sharing.

Graphical data mapping

Support for user-defined elements to define dynamically in your message map structured data for which you do not have the XML schema
A user-defined element is an element that you can add directly into a message map to define extension points in any of the following message assembly components:
  • The local environment tree variables folder
  • The message body
  • xsd:any elements in your message body
  • The Environment tree
  • The transport headers that include extension points such as MQRFH2

You can also use user-defined elements to define a JSON message, and a SOAP or XML message that has an xsd:any.

You can add, reuse, rename, transform, and delete a user-defined element directly into your message map during the development phase.

For more information, see Mapping user-defined elements.

Using the Environment tree as input data to your transformations
In a message map, you can update, delete, or create data in the environment tree Variables folder. You can use the environment tree as input data to your transformations.

For more information, see Mapping the environment tree.

Graphical data mapping of JSON messages

You can use the Graphical Data Mapping editor to create a JSON message, or to transform a JSON message.

For more information, see Creating or transforming a JSON message by using a message map.

Creating a message map programmatically

You can use the Graphical Data Map Specification Language to create a message map programmatically.

For more information, see Creating a message map programmatically.

Dynamic and intelligent

Operational policy

Use operational policies to control the operational behavior of certain MQ and MQTT message flow nodes within message flows, without the need to redeploy your resources. A policy can be attached to one or more nodes in a message flow to control the values of a specific set of message flow node properties, such as connection credentials, at run time.

For more information, see Operational policy.

ReSequence failure mode
Resequence message processing now contains a retry mechanism to control how to handle downstream failures. For more information, see Resequence node.

Platforms and environments

WebSphere ESB conversion tool enhancements
The WebSphere ESB conversion tool is updated and made available on a different schedule to the core IBM Integration Bus product, as and when new features are included. You can check for updates, and download and install the latest version of the WebSphere ESB conversion tool from the IBM Integration Toolkit. For more information, see Installing or updating the WebSphere ESB conversion tool.
Built-in converters for conversion of the following entities are included:
  • Export bindings
  • Synchronous import bindings
  • Most mid-flow primitive types
Automatic conversion of the following entities is supported:
  • Service Invoke primitive
  • Modules with more than one export, component, or interface
  • Modules with Plain Old Java™ Objects (POJOs)
  • Subflows

For more information, see The WebSphere ESB conversion tool.