+

Search Tips   |   Advanced Search

Connect a bus and an IBM MQ network to use publish/subscribe messaging

We can connect a service integration bus and an IBM MQ network to send and receive messages using publish/subscribe messaging. To do this, we create a foreign bus connection, where the IBM MQ network is viewed as a foreign bus.

To connect a service integration bus and an IBM MQ network to use publish/subscribe messaging, the following resources must be defined in WebSphere Application Server:

The following resources must be defined in IBM MQ:

In publish/subscribe messaging, the sending application publishes messages to an intermediate broker destination. Multiple receiving applications can subscribe to this destination to receive a copy of any messages that are published. When a message arrives at a destination, the messaging provider distributes a copy of the message to all the receiving applications that subscribe to the destination. There can be a one-to-many relationship between the sender and receiver of a message, depending on how many receiving applications are subscribed to a destination when a message arrives.


Tasks

  1. In the navigation pane, click Service integration -> Buses. A list of service integration buses is displayed.

  2. In the Buses pane, click the service integration bus to connect from, that is, the local bus.

  3. In the configuration tab, under Topology, click Foreign bus connections.

  4. In the Foreign bus connections pane, click New to start the Foreign bus connection wizard.

  5. In the Bus connection type pane, ensure that Direct connection is selected.

  6. In the Foreign bus type pane, select IBM MQ.

  7. In the Local bus details pane, select the messaging engine to use and enter the name of the virtual queue manager, that is, the name by which the virtual queue manager of the service integration bus is known to the IBM MQ network.

  8. In the IBM MQ details pane, complete the following details:

    1. Enter a name for the foreign bus, that is, the bus that represents the IBM MQ network.

    2. Enter a name for the IBM MQ link that connects to the foreign bus. Ensure that the Foreign bus name and MQ link name are different.

    3. Select the Configure publish-subscribe messaging for this connection check box.

  9. To send messages from the local bus to the IBM MQ network, complete the following details:

    1. Ensure that Enable Service integration bus to WebSphere Q message flow is selected.

    2. Enter the IBM MQ receiver channel name, host name and communication port.

    3. If the IBM MQ gateway queue manager or queue-sharing group requires a secure connection, select the Is the IBM MQ receiver channel secure? check box. When this option is selected, the IBM MQ receiver channel accepts only connections that have secure sockets layer (SSL) based encryption. The connection is successful only if a set of suitably compatible SSL credentials are associated with the service integration bus outbound channel and the IBM MQ receiver channel that it connects to.

  10. To receive messages on the local bus from the IBM MQ network, complete the following details:

    1. Ensure that Enable IBM MQ to Service integration bus message flow is selected.

    2. Enter the IBM MQ sender channel name.

    3. Optionally, enter the service integration bus inbound user ID. When the local bus is secure, the inbound user ID replaces the user ID in messages from the foreign bus that arrive at the local bus and is used to authorize whether those messages can access their destinations. Specify an inbound user ID for the local service integration bus under the following circumstances:

      • The foreign bus is in a different security domain, so user IDs in the foreign bus are not recognized in the local bus.

      • You want local control of access to inbound messages to the local bus.

      If the local bus is not secure, the inbound user ID has no effect on messages. If the local bus is secure, the foreign bus is not secure, and an inbound user ID is not set, an inbound message from the foreign bus is only authorized to destinations that allow unauthenticated users access.

  11. From the Publish-subscribe details pane, repeat the following steps for each topic mapping we want to create:

    1. Enter the name of the topic on the local bus.

    2. Select the name of the topic space on the local bus that will map to the topic space on the foreign bus.

    3. Enter the name of the gateway queue manager or queue sharing group for the IBM MQ broker configured for broker publish/subscribe flow.

    4. To send messages from the local bus to the IBM MQ gateway queue manager or queue-sharing group, enter the name of the queue for the IBM MQ broker destination.

    5. To receive messages on the local bus from the IBM MQ gateway queue manager or queue-sharing group, enter the name of the subscription point that will receive messages.

    6. Select the direction of message flow for the publish/subscribe topic mapping. The options available depend on whether you completed details on the IBM MQ details pane to send messages, receive messages, or both, on the local bus.

    7. Click Add.

  12. When the Foreign bus connection wizard is finished, save the changes to the master configuration.

We have created a connection between a service integration bus and an IBM MQ network to use publish/subscribe messaging. We have created a direct foreign bus connection, which contains a routing definition, or virtual link. The physical link, an IBM MQ link on the messaging engine for the local bus, is created automatically.


What to do next

We can test the connection.

  • Connect buses using an indirect connection
  • Testing foreign bus connections
  • List the foreign bus connections
  • Remove a foreign bus connection from a bus
  • Configure destination defaults for a foreign bus connection
  • Add or modify topic mappings on the IBM MQ link publish/subscribe broker