SOAP, by definition, is transport-independent -- which means that you can transfer SOAP messages using any type of transport protocol, including IBM WebSphereMQ. Quite a few Web Services Platforms (WSPs) support SOAP over JMS. But in this scenario, the application works only with SOAP. It does not work directly with MQ. The SOAP engine encapsulates all the JMS functionality. The application uses JAX-RPC or SAAJ or some other SOAP API to invoke a Web service. The SOAP runtime system converts the request into a SOAP message, packages the message into JMS, and then puts the message onto the appropriate JMS queue/topic. At the other end of the wire, the receiving SOAP engine pulls the message off the JMS queue, unpacks the SOAP message, processes it, and invokes the appropriate application to handle the request.
The distinction here from your example is that both trading partner 1 and trading partner 2 must be using both SOAP and MQ for the interaction to work -- athough you can use a gateway product to bridge between HTTP and MQ environments.
This was first published in April 2004