The final major piece of functionality that I shall cover in this series of posts looking at deliverables made by Hursley in to WebSphere Application Version 6.1 is WebSphere MQ Servers. In Version 6.0 of the Application Server, WebSphere MQ could either be accessed directly from an application using the WebSphere MQ JMS provider or via the service integration bus by using a foreign bus and WebSphere MQ link. In Version 6.1, it is possible to add a WebSphere MQ queue manager, running on z/OS and at Version 6 (CSD 1 or greater), directly as a member of the bus.
The configuration steps are considerably easier than those for a foreign bus and WebSphere MQ link. A WebSphere MQ Server is defined in the Application Server administration by specifying a host, port and channel name for the queue manager, along with a transport chain to be used to connect. This WebSphere MQ Server can then be added as a member of the bus as you would an application server or cluster. Next, destinations are defined on the bus and assigned to the WebSphere MQ Server, selecting from a drop-down list which queue on queue manager each should map to.
So what does all of this achieve? Well, it means that an application can connect to the bus and interact directly with WebSphere MQ queues. It can send to a queue and, unlike a WebSphere MQ link configuration where remote get is not supported, it can also receive from a queue. It is also possible to deploy a service integration bus mediation against the destination. Lastly, the WebSphere MQ Server can represent not just a single queue manager but, alternatively, it may represent a queue sharing group, thereby enabling the application to make use of the z/OS shared queue support.