Introduction to IBM MQ transport for SOAP
The IBM MQ transport for SOAP provides a JMS transport for SOAP. The IBM MQ SOAP sender and listener provide a means to call web services.
The IBM MQ SOAP listener supports services hosted by .NET Framework 1, .NET Framework 2, and Axis 1.4. The IBM MQ SOAP sender supports web services clients running on .NET Framework 1, .NET Framework 2, Axis 1.4 and Axis2. Clients can be either an IBM MQ server or client application. The IBM MQ transport for SOAP is also integrated into other environments such as Microsoft Windows Communication Foundation, WebSphere Application Server, and CICSĀ® Transaction Server.
The integration into Microsoft Windows Communication Foundation is part of the IBM MQ support for .NET Framework 3.
The IBM MQ transport for SOAP is a set of protocols and tools to transport SOAP messages by using JMS over IBM MQ. It is packaged in different ways for different application environments as shown in Table 1.Integrated with additional IBM MQ components | Integrated into a framework | |
---|---|---|
Provided as part of IBM MQ installation | .NET Framework 1
.NET Framework 2 Axis 1.4 |
Windows Communication Foundation (.NET Framework 3)
Axis2 (Client only) |
Provided in another software package | WebSphere Application Server
CICS Transaction Server 4.1 WebSphere ESB WebSphere Process Server for Multiplatforms |
Integration of the IBM MQ transport for SOAP into an application framework simplifies the development and deployment of web services to IBM MQ.
With additional IBM MQ SOAP components, we can interact directly with the IBM MQ SOAP components to develop and deploy services. Use the IBM MQ SOAP tools to configure and deploy the web services and the web service clients to IBM MQ.
In the integrated environments, development and deployment is simpler. We use the same tools for development and deployment as you would to develop and deploy a SOAP HTTP web service. You must still configure the IBM MQ queues, channels, and queue managers that you require using IBM MQ tools.
We can mix and match IBM MQ SOAP clients and servers from any of these environments.
Benefits
The IBM MQ transport for SOAP offers existing IBM MQ users the following principal benefits:
- Use your IBM MQ network to connect existing web services.
-
The services might be ones we have written, or services that are provided as interfaces to other packaged software applications we have deployed.
The benefit comes from using your existing IBM MQ network to connect web services. The IBM MQ transport has the advantage of being a managed and reliable queued messaging service.
- Writing new applications, or converting existing applications, to use SOAP rather than IBM MQ interfaces.
-
Typically, applications require a specific IBM MQ adapter to be developed to integrate with another application. Adapters have two parts: the connector piece, that puts and gets messages to and from the transport, and the adapter piece that converts data to and from application-specific formats. Integrating each pair of applications is a new challenge.
The benefit of SOAP comes from standardizing on SOAP for defining application interfaces, and then having a choice of transports. You do not need to write application-specific adapters, and we can choose whether to use IBM MQ or HTTP as the connector. Which transport you choose depends on what qualities of service and connectivity you require.
For existing SOAP over HTTP users, the benefit of IBM MQ transport for SOAP comes from using a managed and reliable asynchronous transport. The benefits are twofold:
- A truly asynchronous programming model for availability and performance.
- By using an asynchronous client interface, the client and service applications do not have to be available at the same time. Requests sent by the client will be stored until the service is available to process them.
- A ready built managed network that is designed to be reliable and available.
-
By choosing IBM MQ as a transport, you are getting the advantage of using a managed network that provides reliable messaging.
In contrast, transports such as HTTP and FTP over TCP/IP are unmanaged. An unmanaged network is ideal for unpredictable connections: there are fewer management tasks.
Summary
IBM MQ transport for SOAP provides the following components:- The SOAP/JMS transport binding is used in WSDL documents to bind a SOAP service to a JMS transport. The IBM MQ implementation of the SOAP/JMS binding uses a URI that takes either of two forms:
- IBM MQ transport for SOAP
-
jms:/queue? &Name=Value&Name=Value...
- IBM MQ wire format for W3C candidate recommendation
-
jms:queue: qName ?connectionFactory=connectQueueManager (qMgrName)&Name=Value&Name=Value...
- The mapping of a SOAP message onto an IBM MQ message.
- Two IBM MQ SOAP listeners to receive SOAP requests, one for Java and one for .NET Framework 1 or .NET Framework 2. The listeners use .NET or Axis 1.4 to process the SOAP request.
- Two IBM MQ SOAP senders to create IBM MQ SOAP requests. web services clients register with a sender to process jms: SOAP requests.
- Integration with Windows Communication Foundation (WCF), sometimes known as .NET 3, to send and receive IBM MQ Transport for SOAP messages.
- Integration of the client with Axis2, sometimes known as JAX-WS, to send IBM MQ Transport for SOAP or W3C SOAP JMS messages.
- The command amqwdeployWMQService, which creates development and run time components and scripts to deploy a web service by using the IBM MQ transport for SOAP.
- Sample Java and .NET client and service code.
- A script to set the class path, and other utility scripts.
In the integrated environments the sender and listener are integrated into each environment, as are extensions to the development and deployment tools.