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

<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="http://www.w3.org/2001/XMLSchema"
    xmlns:xsi="http://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>