You can configure a bus to connect to, and exchange messages with, other messaging networks. To do this, you must configure a foreign bus. A foreign bus is a representation of another service integration bus, or a WebSphere MQ queue manager, with which an existing service integration bus can exchange messages. The purpose of a foreign bus is to extend the network of buses that can exchange messages.
A foreign bus encapsulates information related to the remote messaging network, such as the type of the foreign bus and whether messaging applications are allowed to send messages to the foreign bus. A foreign bus is associated with a service integration bus. The bus with which the foreign bus is associated is known as the local bus. The foreign bus represents another service integration bus, either in the same cell as the local bus or in a different cell, or it represents a WebSphere MQ queue manager. From the local bus, every other bus is regarded as a foreign bus, even if it is a bus in the same cell.
In the following figure, buses 1 and 2 are linked directly, and buses 1 and 3 are linked indirectly through bus 2.
You can define an explicit destination on a foreign bus, to which an application can send messages. You can also configure default properties for use by messages sent to destinations on a foreign bus when there is no explicit foreign destination definition, and the application does not explicitly provide values for the properties. An application cannot receive messages from a foreign destination; it can only consume messages from a destination on the bus to which it is connected.
Messages flowing to or from a foreign bus that cannot be successfully processed are re-routed to the system exception destination of the messaging engine that owns the foreign bus link, possibly disrupting message order. Common reasons for re-routing messages to the exception destination are that the target destination is unknown by the foreign bus, or that the foreign bus has not granted the sending bus access to the target destination.
An application subscribing to a local topic space can receive messages published to a topic on a foreign bus. To allow publish/subscribe messaging between buses, you must map topic space names on a local bus to topic space names on a foreign bus.
A topic space mapping allows subscribers on the local topic space to receive messages published in the foreign topic space. For publications to flow from the local topic space into the foreign bus, an equivalent topic space mapping is required by the foreign bus.
You administer topic space mappings through the routing properties for a foreign bus. Topic space names for the local bus are mapped to topic space names defined on the foreign bus. It is common for these two names to match. Note that mapping two topic spaces implies that the topics within them are the same.