MQRFH2 SOAP settings

The IBM® MQ SOAP senders and listeners create or expect to receive an MQRFH2 with the following settings.

Purpose

The IBM MQ SOAP senders add properties to the <usr> folder created by IBM MQ JMS. The properties contain information required by the SOAP container in the target environment. Property syntax describes the syntax of the properties when they are added to an MQRFH2. For the description an MQRFH2 header, see MQRFH2 - Rules and formatting header 2.

Property syntax

Read syntax diagramSkip visual syntax diagram<usr><contentType>text/xml; charset=utf-8</contentType> <endpointURL>URI</endpointURL><targetService>=serviceName1</targetService><soapAction>=serviceName2</soapAction><transportVersion>1</transportVersion></usr>
Notes:
  • 1 targetService is required for .NET Framework 1 or 2, and not used on Axis 1.4.
  • 2 soapAction is optional for .NET Framework 1 or 2, and not used on Axis 1.4.

Parameters

contentType
contentType always contains the string text/xml; charset=utf-8.
endpointURL
See URI syntax and parameters for web service deployment.
targetService
1 On Axis, serviceName is the fully qualified name of a Java service, for example: targetService=javaDemos.service.StockQuoteAxis. If targetService is not specified, a service is loaded using the default Axis mechanism.
2 On .NET, serviceName is the name of a .NET service located in the deployment directory, for example: targetService=myService.asmx. In the .NET environment, the targetService parameter makes it possible for a single IBM MQ SOAP listener to be able to process requests for multiple services. These services must be deployed from the same directory.
soapAction
transportVersion
transportVersion is always set to 1.

Example

The example shows an MQRFH2 and the following SOAP message. The lengths of the folders are shown in decimal.
Note: & in the URI is encoded as &amp;
52464820 00000002 000002B0 00000001 RFH/ 0002 1208 0001
000004B8 20202020 20202020 00000000 1208 ? ? ? ? ? ? ? ? 0000
000004B8              1208
32 <mcd>
<Msd>jms_bytes</Msd>
</mcd>?
208 <jms>
<Dst>queue://queue://SOAPJ.demos</Dst>
<Rto>queue://WMQSOAP.DEMO.QM/SYSTEM.SOAP.RESPONSE.QUEUE</Rto>
<Tms>1157388516465</Tms>
<Cid>ID:000000000000000000000000000000000000000000000000</Cid>
<Dlv>1</Dlv>
</jms>
400 <usr>
<contentType>text/xml; charset=utf-8</contentType>
<transportVersion>1</transportVersion>
<endpointURL>
jms:/queue?destination=SOAPJ.demos@WMQSOAP.DEMO.QM
&amp;connectionFactory=connectQueueManager(WMQSOAP.DEMO.QM)
clientConnection(localhost%25289414%2529)
clientChannel(TESTCHANNEL)
&amp;replyDestination=SYSTEM.SOAP.RESPONSE.QUEUE
&amp;initialContextFactory=com.ibm.mq.jms.Nojndi
</endpointURL>
</usr>
<?xml version="1.0" encoding="UTF-8"?>
<soapenv:Envelope
xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:xsd="https://www.w3.org/2001/XMLSchema"
xmlns:xsi="https://www.w3.org/2001/XMLSchema-instance">
<soapenv:Body>
<ns1:getQuote
soapenv:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:ns1="soap.server.StockQuoteAxis_Wmq">
<in0 xsi:type="xsd:string">XXX</in0>
</ns1:getQuote>
</soapenv:Body>
</soapenv:Envelope>
1 Java service only
2 .NET service only