<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" href="testcases.xsl"?>

<!--
    SOAP over Java Message Service Test Cases
    $Date$
-->

<testcases xmlns="http://www.w3.org/2008/soapjms/testsuite/testcases/">

<!--
Notes:
- The intent is for this file to be processed with an XSLT transform (testcases.xsl)
  to produce a suitable HTML document.
- The "variables" section below is intended to describe the "variables" that are
  used through the testcase definitions which follow.
- Each specific testcase is defined with a "testcase" element and it's sub-elements, etc.
- Each "assertion" element is intended to be transformed into an HTML link that points directly
  to the relevant section within the SOAP/JMS spec.
- The "document" attribute is intended to be transformed into a link that points to the
  definition of the appropriate SOAP message within the "messages" directory.
-->

  <ns prefix="soap11" uri="http://schemas.xmlsoap.org/soap/envelope/"/>
  <ns prefix="soap12" uri="http://www.w3.org/2003/05/soap-envelope"/>
  <ns prefix="wsdl11" uri="http://schemas.xmlsoap.org/wsdl/"/>
  <ns prefix="wsdl20" uri="http://www.w3.org/2006/01/wsdl"/>
  <ns prefix="soapjms" uri="http://www.soapjms.org/2007/08/soap/bindings/JMS/"/>

  <variables>
     <variable>
        <name>request_message_id</name>
	<description>The message ID assigned to a JMS request message by the underlying messaging engine.</description>
     </variable>

     <variable>
        <name>response_message_id</name>
	<description>The message ID assigned to a JMS response message by the underlying messaging engine.</description>
     </variable>

     <variable>
        <name>jms_request_dest</name>
	<description>The identifier of a JMS destination queue or topic to which a request message will be sent.
	This identifier is assigned by the underlying messaging engine.</description>
     </variable>

     <variable>
        <name>jms_response_dest</name>
	<description>The identifier of a JMS destination queue or topic to which a response message will be sent.
	This identifier is assigned by the underlying messaging engine.</description>
     </variable>

     <variable>
        <name>soap_request_msg</name>
	<description>The contents of the SOAP request message inserted into a JMS message.</description>
     </variable>

     <variable>
        <name>soap_response_msg</name>
	<description>The contents of the SOAP response message inserted into a JMS message.</description>
     </variable>

  </variables>

  <testcase xml:id="test0001"
    origin=""
    cr="REQUIRED">
    <title>SOAP 1.1 one-way request</title>
    <description><![CDATA[SOAP 1.1 one-way request message sent to a destination queue.]]></description>
    <assertions>
	<assertion id="Protocol-2003"/>
	<assertion id="Protocol-2004"/>
	<assertion id="Protocol-2009"/>
	<assertion id="Protocol-2010"/>
	<assertion id="Protocol-2016"/>
	<assertion id="Protocol-2018"/>
	<assertion id="Protocol-2021"/>
	<assertion id="Protocol-2022"/>
	<assertion id="Protocol-2027"/>
	<assertion id="Protocol-2029"/>
	<assertion id="Protocol-2030"/>
	<assertion id="Protocol-2033"/>
	<assertion id="Protocol-2051"/>
	<assertion id="Protocol-2060"/>
    </assertions>
    <uri>jms:jndi:jms/MyQueue&amp;jndiConnectionFactoryName=jms/MyCF&amp;targetService=PingPort</uri>
    <message-exchange type="SOAP11-JMS-In-Only">
	<message from="A" to="B" document="messages/soap11/message0001.html" name="message">
	    <assert test="jmsmsg:MessageType = bytes"/>
	    <assert test="jmsmsg:MessageID = ${request_message_id}"/>
	    <assert test="jmsmsg:JMSDeliveryMode = 2"/>
	    <assert test="jmsmsg:JMSPriority = 4"/>
	    <assert test="jmsmsg:JMSExpiration = 0"/>
	    <assert test="jmsmsg:JMSReplyTo = null"/>
	    <assert test="jmsmsg:JMSCorrelationID = null"/>
	    <assert test="jmsmsg:JMSDestination = ${jms_request_dest}"/>
	    <assert test="jmsmsg:JMSRedelivered = false"/>
	    <assert test="jmsmsg:SOAPJMS_bindingVersion = '1.0'"/>
	    <assert test="jmsmsg:SOAPJMS_targetService = 'PingPort'"/>
	    <assert test="jmsmsg:SOAPJMS_contentType = 'text/xml'"/>
	    <assert test="jmsmsg:SOAPJMS_soapAction = ''"/>
	    <assert test="jmsmsg:SOAPJMS_requestURI = 'jms:jndi:jms/MyQueue'"/>
	    <assert test="jmsmsg:JMSMessageBody = ${soap_request_msg}"/>
	</message>
    </message-exchange>
  </testcase>

  <testcase xml:id="test0002"
    origin=""
    cr="REQUIRED">
    <title>SOAP 1.1 two-way request</title>
    <description><![CDATA[SOAP 1.1 two-way request message sent to a request queue, and response message returned to response queue.]]>
    </description>
    <assertions>
	<assertion id="Protocol-2002"/>
	<assertion id="Protocol-2004"/>
	<assertion id="Protocol-2009"/>
	<assertion id="Protocol-2010"/>
	<assertion id="Protocol-2016"/>
	<assertion id="Protocol-2018"/>
	<assertion id="Protocol-2021"/>
	<assertion id="Protocol-2022"/>
	<assertion id="Protocol-2027"/>
	<assertion id="Protocol-2029"/>
	<assertion id="Protocol-2030"/>
	<assertion id="Protocol-2033"/>
	<assertion id="Protocol-2036"/>
	<assertion id="Protocol-2037"/>
	<assertion id="Protocol-2038"/>
	<assertion id="Protocol-2050"/>
	<assertion id="Protocol-2060"/>
    </assertions>
    <uri>jms:jndi:jms/MyQueue&amp;jndiConnectionFactoryName=jms/MyCF&amp;targetService=EchoPort</uri>
    <message-exchange type="SOAP11-JMS-In-Out">
	<message from="A" to="B" document="messages/soap11/message0002request.html" name="message">
	    <assert test="jmsmsg:MessageType = bytes"/>
	    <assert test="jmsmsg:MessageID = ${request_message_id}"/>
	    <assert test="jmsmsg:JMSDeliveryMode = 2"/>
	    <assert test="jmsmsg:JMSPriority = 4"/>
	    <assert test="jmsmsg:JMSExpiration = 0"/>
	    <assert test="jmsmsg:JMSReplyTo = ${jms_response_dest}"/>
	    <assert test="jmsmsg:JMSCorrelationID = 'Correlator0002'"/>
	    <assert test="jmsmsg:JMSDestination = ${jms_request_dest}"/>
	    <assert test="jmsmsg:JMSRedelivered = false"/>
	    <assert test="jmsmsg:SOAPJMS_bindingVersion = '1.0'"/>
	    <assert test="jmsmsg:SOAPJMS_targetService = 'EchoPort'"/>
	    <assert test="jmsmsg:SOAPJMS_contentType = 'text/xml'"/>
	    <assert test="jmsmsg:SOAPJMS_soapAction = ''"/>
	    <assert test="jmsmsg:SOAPJMS_requestURI = 'jms:jndi:jms/MyQueue'"/>
	    <assert test="jmsmsg:JMSMessageBody = ${soap_request_msg}"/>
	</message>
	<message from="B" to="A" document="messages/soap11/message0002response.html" name="message">
	    <assert test="jmsmsg:MessageType = bytes"/>
	    <assert test="jmsmsg:MessageID = ${response_message_id}"/>
	    <assert test="jmsmsg:JMSDeliveryMode = 2"/>
	    <assert test="jmsmsg:JMSPriority = 4"/>
	    <assert test="jmsmsg:JMSExpiration = 0"/>
	    <assert test="jmsmsg:JMSReplyTo = null"/>
	    <assert test="jmsmsg:JMSCorrelationID = 'Correlator0002'"/>
	    <assert test="jmsmsg:JMSDestination = ${jms_response_dest}"/>
	    <assert test="jmsmsg:JMSRedelivered = false"/>
	    <assert test="jmsmsg:SOAPJMS_bindingVersion = '1.0'"/>
	    <assert test="jmsmsg:SOAPJMS_contentType = 'text/xml'"/>
	    <assert test="jmsmsg:JMSMessageBody = ${soap_response_msg}"/>
	</message>
    </message-exchange>
  </testcase>

  <testcase xml:id="test0101"
    origin=""
    cr="REQUIRED">
    <title>SOAP 1.2 one-way request</title>
    <description><![CDATA[SOAP 1.2 one-way request message sent to a destination queue.]]></description>
    <assertions>
	<assertion id="Protocol-2003"/>
	<assertion id="Protocol-2004"/>
	<assertion id="Protocol-2009"/>
	<assertion id="Protocol-2010"/>
	<assertion id="Protocol-2016"/>
	<assertion id="Protocol-2018"/>
	<assertion id="Protocol-2021"/>
	<assertion id="Protocol-2022"/>
	<assertion id="Protocol-2027"/>
	<assertion id="Protocol-2029"/>
	<assertion id="Protocol-2030"/>
	<assertion id="Protocol-2032"/>
	<assertion id="Protocol-2051"/>
	<assertion id="Protocol-2060"/>
    </assertions>
    <uri>jms:jndi:jms/MyQueue&amp;jndiConnectionFactoryName=jms/MyCF&amp;targetService=PingPort</uri>
    <message-exchange type="SOAP12-JMS-In-Only">
	<message from="A" to="B" document="messages/soap12/message0001.html" name="message">
	    <assert test="jmsmsg:MessageType = bytes"/>
	    <assert test="jmsmsg:MessageID = ${request_message_id}"/>
	    <assert test="jmsmsg:JMSDeliveryMode = 2"/>
	    <assert test="jmsmsg:JMSPriority = 4"/>
	    <assert test="jmsmsg:JMSExpiration = 0"/>
	    <assert test="jmsmsg:JMSReplyTo = null"/>
	    <assert test="jmsmsg:JMSCorrelationID = null"/>
	    <assert test="jmsmsg:JMSDestination = ${jms_request_dest}"/>
	    <assert test="jmsmsg:JMSRedelivered = false"/>
	    <assert test="jmsmsg:SOAPJMS_bindingVersion = '1.0'"/>
	    <assert test="jmsmsg:SOAPJMS_targetService = 'PingPort'"/>
	    <assert test="jmsmsg:SOAPJMS_contentType = 'text/xml'"/>
	    <assert test="jmsmsg:SOAPJMS_soapAction = ''"/>
	    <assert test="jmsmsg:SOAPJMS_requestURI = 'jms:jndi:jms/MyQueue'"/>
	    <assert test="jmsmsg:JMSMessageBody = ${soap_request_msg}"/>
	</message>
    </message-exchange>
  </testcase>

  <testcase xml:id="test0102"
    origin=""
    cr="REQUIRED">
    <title>SOAP 1.2 two-way request</title>
    <description><![CDATA[SOAP 1.2 two-way request message sent to a request queue, and response message returned to response queue.]]>
    </description>
    <assertions>
	<assertion id="Protocol-2002"/>
	<assertion id="Protocol-2004"/>
	<assertion id="Protocol-2009"/>
	<assertion id="Protocol-2010"/>
	<assertion id="Protocol-2016"/>
	<assertion id="Protocol-2018"/>
	<assertion id="Protocol-2021"/>
	<assertion id="Protocol-2022"/>
	<assertion id="Protocol-2027"/>
	<assertion id="Protocol-2029"/>
	<assertion id="Protocol-2030"/>
	<assertion id="Protocol-2032"/>
	<assertion id="Protocol-2036"/>
	<assertion id="Protocol-2037"/>
	<assertion id="Protocol-2038"/>
	<assertion id="Protocol-2050"/>
	<assertion id="Protocol-2060"/>
    </assertions>
    <uri>jms:jndi:jms/MyQueue&amp;jndiConnectionFactoryName=jms/MyCF&amp;targetService=EchoPort</uri>
    <message-exchange type="SOAP12-JMS-In-Out">
	<message from="A" to="B" document="messages/soap12/message0002request.html" name="message">
	    <assert test="jmsmsg:MessageType = bytes"/>
	    <assert test="jmsmsg:MessageID = ${request_message_id}"/>
	    <assert test="jmsmsg:JMSDeliveryMode = 2"/>
	    <assert test="jmsmsg:JMSPriority = 4"/>
	    <assert test="jmsmsg:JMSExpiration = 0"/>
	    <assert test="jmsmsg:JMSReplyTo = ${jms_response_dest}"/>
	    <assert test="jmsmsg:JMSCorrelationID = 'Correlator0102'"/>
	    <assert test="jmsmsg:JMSDestination = ${jms_request_dest}"/>
	    <assert test="jmsmsg:JMSRedelivered = false"/>
	    <assert test="jmsmsg:SOAPJMS_bindingVersion = '1.0'"/>
	    <assert test="jmsmsg:SOAPJMS_targetService = 'EchoPort'"/>
	    <assert test="jmsmsg:SOAPJMS_contentType = 'text/xml'"/>
	    <assert test="jmsmsg:SOAPJMS_soapAction = ''"/>
	    <assert test="jmsmsg:SOAPJMS_requestURI = 'jms:jndi:jms/MyQueue'"/>
	    <assert test="jmsmsg:JMSMessageBody = ${soap_request_msg}"/>
	</message>
	<message from="B" to="A" document="messages/soap12/message0002response.html" name="message">
	    <assert test="jmsmsg:MessageType = bytes"/>
	    <assert test="jmsmsg:MessageID = ${response_message_id}"/>
	    <assert test="jmsmsg:JMSDeliveryMode = 2"/>
	    <assert test="jmsmsg:JMSPriority = 4"/>
	    <assert test="jmsmsg:JMSExpiration = 0"/>
	    <assert test="jmsmsg:JMSReplyTo = null"/>
	    <assert test="jmsmsg:JMSCorrelationID = 'Correlator0102'"/>
	    <assert test="jmsmsg:JMSDestination = ${jms_response_dest}"/>
	    <assert test="jmsmsg:JMSRedelivered = false"/>
	    <assert test="jmsmsg:SOAPJMS_bindingVersion = '1.0'"/>
	    <assert test="jmsmsg:SOAPJMS_contentType = 'text/xml'"/>
	    <assert test="jmsmsg:JMSMessageBody = ${soap_response_msg}"/>
	</message>
    </message-exchange>
  </testcase>
  
  <testcase xml:id="test0003"
    origin=""
    cr="REQUIRED">
    <title>SOAP 1.2 one-way request using TextMessage</title>
    <description><![CDATA[SOAP 1.2 one-way request message (using TextMessage) sent to a destination queue.
    Vendor-specific mechanism used to select TextMessage.]]></description>
    <assertions>
	<assertion id="Protocol-2003"/>
	<assertion id="Protocol-2004"/>
	<assertion id="Protocol-2009"/>
	<assertion id="Protocol-2010"/>
	<assertion id="Protocol-2016"/>
	<assertion id="Protocol-2018"/>
	<assertion id="Protocol-2021"/>
	<assertion id="Protocol-2022"/>
	<assertion id="Protocol-2027"/>
	<assertion id="Protocol-2029"/>
	<assertion id="Protocol-2030"/>
	<assertion id="Protocol-2032"/>
	<assertion id="Protocol-2051"/>
	<assertion id="Protocol-2060"/>
	<assertion id="Protocol-2072"/>
    </assertions>
    <uri>jms:jndi:jms/MyQueue&amp;jndiConnectionFactoryName=jms/MyCF&amp;targetService=PingPort</uri>
    <message-exchange type="SOAP12-JMS-In-Only">
	<message from="A" to="B" document="messages/soap12/message0001.html" name="message">
	    <assert test="jmsmsg:MessageType = text"/>
	    <assert test="jmsmsg:MessageID = ${request_message_id}"/>
	    <assert test="jmsmsg:JMSDeliveryMode = 2"/>
	    <assert test="jmsmsg:JMSPriority = 4"/>
	    <assert test="jmsmsg:JMSExpiration = 0"/>
	    <assert test="jmsmsg:JMSReplyTo = null"/>
	    <assert test="jmsmsg:JMSCorrelationID = null"/>
	    <assert test="jmsmsg:JMSDestination = ${jms_request_dest}"/>
	    <assert test="jmsmsg:JMSRedelivered = false"/>
	    <assert test="jmsmsg:SOAPJMS_bindingVersion = '1.0'"/>
	    <assert test="jmsmsg:SOAPJMS_targetService = 'PingPort'"/>
	    <assert test="jmsmsg:SOAPJMS_contentType = 'text/xml'"/>
	    <assert test="jmsmsg:SOAPJMS_soapAction = ''"/>
	    <assert test="jmsmsg:SOAPJMS_requestURI = 'jms:jndi:jms/MyQueue'"/>
	    <assert test="jmsmsg:JMSMessageBody = ${soap_request_msg}"/>
	</message>
    </message-exchange>
  </testcase>

  <testcase xml:id="test0004"
    origin=""
    cr="REQUIRED">
    <title>SOAP 1.1 two-way request using TextMessage</title>
    <description><![CDATA[SOAP 1.1 two-way request message sent to a request queue, and response message returned to response queue.
    Vendor-specific mechanism used to select TextMessage.]]>
    </description>
    <assertions>
	<assertion id="Protocol-2002"/>
	<assertion id="Protocol-2004"/>
	<assertion id="Protocol-2009"/>
	<assertion id="Protocol-2010"/>
	<assertion id="Protocol-2016"/>
	<assertion id="Protocol-2018"/>
	<assertion id="Protocol-2021"/>
	<assertion id="Protocol-2022"/>
	<assertion id="Protocol-2027"/>
	<assertion id="Protocol-2029"/>
	<assertion id="Protocol-2030"/>
	<assertion id="Protocol-2033"/>
	<assertion id="Protocol-2036"/>
	<assertion id="Protocol-2037"/>
	<assertion id="Protocol-2038"/>
	<assertion id="Protocol-2050"/>
	<assertion id="Protocol-2060"/>
	<assertion id="Protocol-2072"/>
    </assertions>
    <uri>jms:jndi:jms/MyQueue&amp;jndiConnectionFactoryName=jms/MyCF&amp;targetService=EchoPort</uri>
    <message-exchange type="SOAP11-JMS-In-Out">
	<message from="A" to="B" document="messages/soap11/message0002request.html" name="message">
	    <assert test="jmsmsg:MessageType = text"/>
	    <assert test="jmsmsg:MessageID = ${request_message_id}"/>
	    <assert test="jmsmsg:JMSDeliveryMode = 2"/>
	    <assert test="jmsmsg:JMSPriority = 4"/>
	    <assert test="jmsmsg:JMSExpiration = 0"/>
	    <assert test="jmsmsg:JMSReplyTo = ${jms_response_dest}"/>
	    <assert test="jmsmsg:JMSCorrelationID = null"/>
	    <assert test="jmsmsg:JMSDestination = ${jms_request_dest}"/>
	    <assert test="jmsmsg:JMSRedelivered = false"/>
	    <assert test="jmsmsg:SOAPJMS_bindingVersion = '1.0'"/>
	    <assert test="jmsmsg:SOAPJMS_targetService = 'EchoPort'"/>
	    <assert test="jmsmsg:SOAPJMS_contentType = 'text/xml'"/>
	    <assert test="jmsmsg:SOAPJMS_soapAction = ''"/>
	    <assert test="jmsmsg:SOAPJMS_requestURI = 'jms:jndi:jms/MyQueue'"/>
	    <assert test="jmsmsg:JMSMessageBody = ${soap_request_msg}"/>
	</message>
	<message from="B" to="A" document="messages/soap11/message0002response.html" name="message">
	    <assert test="jmsmsg:MessageType = text"/>
	    <assert test="jmsmsg:MessageID = ${response_message_id}"/>
	    <assert test="jmsmsg:JMSDeliveryMode = 2"/>
	    <assert test="jmsmsg:JMSPriority = 4"/>
	    <assert test="jmsmsg:JMSExpiration = 0"/>
	    <assert test="jmsmsg:JMSReplyTo = null"/>
	    <assert test="jmsmsg:JMSCorrelationID = ${request_message_id}"/>
	    <assert test="jmsmsg:JMSDestination = ${jms_response_dest}"/>
	    <assert test="jmsmsg:JMSRedelivered = false"/>
	    <assert test="jmsmsg:SOAPJMS_bindingVersion = '1.0'"/>
	    <assert test="jmsmsg:SOAPJMS_contentType = 'text/xml'"/>
	    <assert test="jmsmsg:JMSMessageBody = ${soap_response_msg}"/>
	</message>
    </message-exchange>
  </testcase>

<!-- begin Property test cases -->

  <testcase xml:id="test0005"
    origin=""
    cr="REQUIRED">
    <title>JMS Message Header properties: Set values in JMS URI </title>
    <description><![CDATA[Explicitly set deliveryMode, timeToLive, priority, and replyToName in JMS URI.]]>
    </description>
    <assertions>
	    <assertion id="Protocol-2005"/>
	    <assertion id="Protocol-2006"/>
	    <assertion id="Protocol-2007"/>
        <assertion id="Protocol-2008"/>
	    <assertion id="Protocol-2060"/>
    </assertions>
    <uri>jms:jndi:jms/MyQueue?jndiConnectionFactoryName=jms/MyCF&amp;targetService=EchoPort&amp;deliveryModeType=NON_PERSISTENT&amp;timeToLive=3600000&amp;priority=5&amp;replyToName=jms/MyReplyQueue</uri>
    <message-exchange type="SOAP11-JMS-In-Out">
	    <message from="A" to="B" document="messages/soap11/message0002request.html" name="message">
          <assert test="jmsmsg:JMSReplyTo = ${jms_response_dest}"/>
          <assert test="jmsmsg:JMSDeliveryMode = 1"/>
	      <assert test="jmsmsg:JMSPriority = 5"/>
	      <assert test="jmsmsg:JMSExpiration = {approximately 3600000 greater than the current GMT value}"/>
	      <assert test="jmsmsg:JMSDestination = ${jms_request_dest}"/>
	    </message>
	    <message from="B" to="A" document="messages/soap11/message0002response.html" name="message">
	      <assert test="jmsmsg:JMSDestination = ${jms_response_dest}"/>
	    </message>
    </message-exchange>
  </testcase>

  <testcase xml:id="test0006"
    origin=""
    cr="OPTIONAL">
    <title>JMS Message Header properties: Set values in WSDL 1.1 JMS bindings</title>
    <description><![CDATA[Explicitly set deliveryMode, timeToLive, priority, and replyToName in WSDL 1.1 JMS bindings.]]>
    </description>
    <assertions>
	    <assertion id="Protocol-2005"/>
	    <assertion id="Protocol-2006"/>
	    <assertion id="Protocol-2007"/>
	    <assertion id="Protocol-2008"/>
        <assertion id="WSDLUsage-3001"/>
        <assertion id="WSDLUsage-3002"/>
        <assertion id="WSDLUsage-3003"/>
        <assertion id="WSDLUsage-3004"/>
    </assertions>

    <wsdlfragment>
    <![CDATA[
      ...
      <wsdl11:binding name="MyBinding1" type="MyPortType1">
         <wsdl11soap11:binding style="document" transport="http://www.w3.org/2010/soapjms/"/>
         ...
         <soapjms:deliveryMode>PERSISTENT</soapjms:deliveryMode>
         <soapjms:timeToLive>7200000</soapjms:timeToLive>
         <soapjms:priority>3</soapjms:priority>
         ...
      </wsdl11:binding>
      ...
      <wsdl11:service name="MyService1">
         ...
         <soapjms:deliveryMode>NON_PERSISTENT</soapjms:deliveryMode>
         <soapjms:priority>6</soapjms:priority>
         ...
         <wsdl11:port binding="MyBinding1" name="MyPort1">
             <wsdl11soap11:address location="jms:jndi:myQueue?targetService=MyPort1"/>
            ...
            <soapjms:replyToName>jms/AReplyQueue</soapjms:replyToName>
         ...
         </wsdl11:port>
         ...
      </wsdl11:service>
    ]]>
    </wsdlfragment>

    <message-exchange type="SOAP12-JMS-In-Out">
	    <message from="A" to="B" document="messages/soap12/message0002request.html" name="message">
          <assert test="jmsmsg:JMSReplyTo = ${jms_response_dest} (refers to 'jms/AReplyQueue')"/>
	      <assert test="jmsmsg:JMSDeliveryMode = 1"/>
	      <assert test="jmsmsg:JMSPriority = 6"/>
	      <assert test="jmsmsg:JMSExpiration = {approximately 7200000 ms greater than the current GMT value}"/>
	      <assert test="jmsmsg:JMSDestination = ${jms_request_dest} (refers to 'myQueue')"/>
	    </message>
	    <message from="B" to="A" document="messages/soap12/message0002response.html" name="message">
	      <assert test="jmsmsg:JMSDestination = ${jms_response_dest}"/>
	    </message>
    </message-exchange>
  </testcase>

  <testcase xml:id="test0007"
    origin=""
    cr="OPTIONAL">
    <title>JMS Message Header properties: Set values in WSDL 2.0 JMS bindings</title>
    <description><![CDATA[Explicitly set deliveryMode, timeToLive, priority, and replyToName in WSDL 2.0 JMS bindings.]]>
    </description>
    <assertions>
	    <assertion id="Protocol-2005"/>
	    <assertion id="Protocol-2006"/>
	    <assertion id="Protocol-2007"/>
	    <assertion id="Protocol-2008"/>
	    <assertion id="Protocol-2032"/>
        <assertion id="WSDLUsage-3001"/>
        <assertion id="WSDLUsage-3002"/>
        <assertion id="WSDLUsage-3003"/>
        <assertion id="WSDLUsage-3004"/>
    </assertions>

    <wsdlfragment>
    <![CDATA[
      <wsdl20:description xmlns:wsoap="http://www.w3.org/ns/wsdl/soap">
         ...
         <wsdl20:binding name="MyBinding1" interface="MyInterface1" type="http://www.w3.org/ns/wsdl/soap" wsoap:version="1.1"
              wsoap:protocol="http://www.w3.org/2010/soapjms/">
         ...
         <soapjms:deliveryMode>NON_PERSISTENT</soapjms:deliveryMode>
         <soapjms:timeToLive>60000</soapjms:timeToLive>
         <soapjms:priority>9</soapjms:priority>
         ...
      </wsdl20:binding>
      ...
      <wsdl20:service name="MyService1" interface="MyInterface1">
         ...
         <soapjms:deliveryMode>PERSISTENT</soapjms:deliveryMode>
         <soapjms:timeToLive>30000</soapjms:timeToLive>
         ...
         <wsdl20:endpoint binding="MyBinding1" name="MyPort1"
             address="jms:jndi:myQueue?targetService=MyPort1"/>
            ...
            <soapjms:timeToLive>10000</soapjms:timeToLive>
            <soapjms:priority>7</soapjms:priority>
            <soapjms:replyToName>jms/AReplyQueue</soapjms:replyToName>
            ...
         </wsdl20:endpoint>
         ...
       </wsdl20:service>
    </wsdl20:description>
    ]]>
    </wsdlfragment>

    <message-exchange type="SOAP12-JMS-In-Out">
	    <message from="A" to="B" document="messages/soap11/message0002request.html" name="message">
          <assert test="jmsmsg:JMSReplyTo = ${jms_response_dest} (refers to 'jms/AReplyQueue')"/>
	      <assert test="jmsmsg:JMSDeliveryMode = 2"/>
	      <assert test="jmsmsg:JMSPriority = 7"/>
	      <assert test="jmsmsg:JMSExpiration = {approximately 10000 ms greater than the current GMT value}"/>
	      <assert test="jmsmsg:JMSDestination = ${jms_request_dest} (refers to 'myQueue')"/>
	    </message>
	    <message from="B" to="A" document="messages/soap11/message0002response.html" name="message">
	      <assert test="jmsmsg:JMSDestination = ${jms_response_dest}"/>
	    </message>
    </message-exchange>
  </testcase>

  <testcase xml:id="test0008"
    origin=""
    cr="OPTIONAL">
    <title>JMS Message Header properties: Set values in environment</title>
    <description><![CDATA[Explicitly set deliveryMode, timeToLive, priority, and replyToName in the client environment.]]>
    </description>
    <assertions>
	    <assertion id="Protocol-2005"/>
	    <assertion id="Protocol-2006"/>
	    <assertion id="Protocol-2007"/>
	    <assertion id="Protocol-2008"/>
	<assertion id="Protocol-2032"/>
    </assertions>
    <environment>
      <property name="delivery mode" value="NON_PERSISTENT"/>
      <property name="time to live" value="14400000"/>
      <property name="priority" value="8"/>
      <property name="reply to name" value="jms/MyReplyQueue"/>
    </environment>
    <message-exchange type="SOAP12-JMS-In-Out">
	    <message from="A" to="B" document="messages/soap12/message0002request.html" name="message">
          <assert test="jmsmsg:JMSReplyTo = ${jms_response_dest}"/>
	      <assert test="jmsmsg:JMSDeliveryMode = 1"/>
	      <assert test="jmsmsg:JMSPriority = 8"/>
	      <assert test="jmsmsg:JMSExpiration = {approximately 14400000 greater than the current GMT value}"/>
	      <assert test="jmsmsg:JMSDestination = ${jms_request_dest}"/>
	    </message>
	    <message from="B" to="A" document="messages/soap12/message0002response.html" name="message">
	      <assert test="jmsmsg:JMSDestination = ${jms_response_dest}"/>
	    </message>
    </message-exchange>
  </testcase>

  <testcase xml:id="test0009"
    origin=""
    cr="OPTIONAL">
    <title>JMS Message Header properties: Set values in multiple (3) sources</title>
    <description><![CDATA[Explicitly set deliveryMode, timeToLive, priority, and replyToName to different values in the JMS URI, WSDL 1.1 bindings, and environment.]]>
    </description>
    <assertions>
      <assertion id="Protocol-2001"/>
	    <assertion id="Protocol-2005"/>
	    <assertion id="Protocol-2006"/>
	    <assertion id="Protocol-2007"/>
	    <assertion id="Protocol-2008"/>
	    <assertion id="Protocol-2060"/>
        <assertion id="Protocol-2033"/>
        <assertion id="WSDLUsage-3001"/>
        <assertion id="WSDLUsage-3002"/>
        <assertion id="WSDLUsage-3003"/>
        <assertion id="WSDLUsage-3004"/>
      </assertions>
    <uri>jms:jndi:jms/MyQueue?targetService=EchoPort&amp;deliveryModeType=PERSISTENT&amp;timeToLive=3600000&amp;priority=1&amp;replyToName=jms/MyReplyQueueA</uri>
    <wsdl version="11">
      <binding><![CDATA[<soapjms:deliveryMode>PERSISTENT</soapjms:deliveryMode>]]></binding>
      <binding><![CDATA[<soapjms:timeToLive>7200000</soapjms:timeToLive>]]></binding>
      <binding><![CDATA[<soapjms:priority>2</soapjms:priority>]]></binding>
      <binding><![CDATA[<soapjms:replyToName>jms/MyReplyQueueB</soapjms:replyToName>]]></binding>
    </wsdl>
    <environment>
      <property name="delivery mode" value="NON_PERSISTENT"/>
      <property name="time to live" value="10800000"/>
      <property name="priority" value="3"/>
      <property name="reply to name" value="jms/MyReplyQueueC"/>
    </environment>
    <message-exchange type="SOAP11-JMS-In-Out">
	    <message from="A" to="B" document="messages/soap11/message0002request.html" name="message">
          <assert test="jmsmsg:JMSReplyTo = ${jms_response_destC}"/>
	      <assert test="jmsmsg:JMSDeliveryMode = 1"/>
	      <assert test="jmsmsg:JMSPriority = 3"/>
	      <assert test="jmsmsg:JMSExpiration = {approximately 10800000 greater than the current GMT value}"/>
	      <assert test="jmsmsg:JMSDestination = ${jms_request_dest}"/>
	    </message>
	    <message from="B" to="A" document="messages/soap11/message0002response.html" name="message">
	      <assert test="jmsmsg:JMSDestination = ${jms_response_destC}"/>
	    </message>
    </message-exchange>
  </testcase>

  <testcase xml:id="test0010"
    origin=""
    cr="OPTIONAL">
    <title>JMS Message Header properties: Set values in multiple (2) sources</title>
    <description><![CDATA[Explicitly set deliveryMode, timeToLive, priority, and replyToName to different values in the JMS URI and WSDL 1.1 bindings.]]>
    </description>
    <assertions>
      <assertion id="Protocol-2001"/>
	    <assertion id="Protocol-2005"/>
	    <assertion id="Protocol-2006"/>
	    <assertion id="Protocol-2007"/>
	    <assertion id="Protocol-2008"/>
	    <assertion id="Protocol-2060"/>
        <assertion id="WSDLUsage-3001"/>
        <assertion id="WSDLUsage-3002"/>
        <assertion id="WSDLUsage-3003"/>
        <assertion id="WSDLUsage-3004"/>
      </assertions>
    <uri>jms:jndi:jms/MyQueue?deliveryModeType=PERSISTENT&amp;timeToLive=3600000&amp;priority=1&amp;replyToName=jms/MyReplyQueueA</uri>
    <wsdl version="11">
      <binding><![CDATA[<soapjms:deliveryMode>NON_PERSISTENT</soapjms:deliveryMode>]]></binding>
      <binding><![CDATA[<soapjms:timeToLive>7200000</soapjms:timeToLive>]]></binding>
      <binding><![CDATA[<soapjms:priority>2</soapjms:priority>]]></binding>
      <binding><![CDATA[<soapjms:replyToName>jms/MyReplyQueueB</soapjms:replyToName>]]></binding>
    </wsdl>
    <message-exchange type="SOAP11-JMS-In-Out">
	    <message from="A" to="B" document="messages/soap11/message0002request.html" name="message">
         <assert test="jmsmsg:JMSReplyTo = ${jms_response_destB}"/>
	      <assert test="jmsmsg:JMSDeliveryMode = 1"/>
	      <assert test="jmsmsg:JMSPriority = 2"/>
	      <assert test="jmsmsg:JMSExpiration = {approximately 7200000 greater than the current GMT value}"/>
	      <assert test="jmsmsg:JMSDestination = ${jms_request_dest}"/>
	    </message>
	    <message from="B" to="A" document="messages/soap11/message0002response.html" name="message">
	      <assert test="jmsmsg:JMSDestination = ${jms_response_destB}"/>
	    </message>
    </message-exchange>
  </testcase>

  <testcase xml:id="test0011"
    origin=""
    cr="REQUIRED">
    <title>JMS Message Header properties: Set values more than once in JMS URI</title>
    <description><![CDATA[Explicitly set deliveryMode, timeToLive, priority, and replyToName more than once in JMS URI.]]>
    </description>
    <assertions>
      <assertion id="Protocol-2002"/>
	    <assertion id="Protocol-2005"/>
	    <assertion id="Protocol-2006"/>
	    <assertion id="Protocol-2007"/>
	    <assertion id="Protocol-2008"/>
	    <assertion id="Protocol-2060"/>
    </assertions>
    <uri>jms:jndi:jms/MyQueue?deliveryModeType=PERSISTENT&amp;timeToLive=3600000&amp;priority=1&amp;replyToName=jms/MyReplyQueueA&amp;deliveryModeType=NON_PERSISTENT&amp;timeToLive=7200000&amp;priority=2&amp;replyToName=jms/MyReplyQueueB</uri>
    <message-exchange type="SOAP11-JMS-In-Out">
	    <message from="A" to="B" document="messages/soap11/message0002request.html" name="message">
         <assert test="jmsmsg:JMSReplyTo = ${jms_response_destB}"/>
	      <assert test="jmsmsg:JMSDeliveryMode = 1"/>
	      <assert test="jmsmsg:JMSPriority = 2"/>
	      <assert test="jmsmsg:JMSExpiration = {approximately 7200000 greater than the current GMT value}"/>
	      <assert test="jmsmsg:JMSDestination = ${jms_request_dest}"/>
	    </message>
	    <message from="B" to="A" document="messages/soap11/message0002response.html" name="message">
	      <assert test="jmsmsg:JMSDestination = ${jms_response_destB}"/>
	    </message>
    </message-exchange>
  </testcase>

  <testcase xml:id="test0012"
    origin=""
    cr="REQUIRED">
    <title>JMS Message Header properties: Do not set values</title>
    <description><![CDATA[Exclude deliveryMode, timeToLive, priority, and replyToName from JMS URI, WSDL, and environment.]]>
    </description>
    <assertions>
	    <assertion id="Protocol-2005"/>
	    <assertion id="Protocol-2006"/>
	    <assertion id="Protocol-2007"/>
	    <assertion id="Protocol-2008"/>
	    <assertion id="Protocol-2060"/>
    </assertions>
    <message-exchange type="SOAP11-JMS-In-Out">
	    <message from="A" to="B" document="messages/soap11/message0002request.html" name="message">
	      <assert test="jmsmsg:JMSDeliveryMode = 2"/>
	      <assert test="jmsmsg:JMSPriority = 4"/>
	      <assert test="jmsmsg:JMSExpiration = 0"/>
	      <assert test="jmsmsg:JMSDestination = ${jms_response_dest}"/>
	    </message>
	    <message from="B" to="A" document="messages/soap11/message0002response.html" name="message">
	      <assert test="jmsmsg:JMSDestination = ${jms_response_dest}"/>
	    </message>
    </message-exchange>
    <note>${jms_response_dest} is determined by client. This destination may be a temporary queue generated as described in the JMS specification.</note>
    <note>This testcase is essentially the same as test0002.</note>
  </testcase>


  <testcase xml:id="test0013"
    origin=""
    cr="OPTIONAL">
    <title>JMS Message Header property priorities: WSDL 1.1 bindings</title>
    <description><![CDATA[Set deliveryMode, timeToLive, priority in different places in WSDL 1.1 JMS bindings to verify precedence.]]>
    </description>
    <assertions>
        <assertion id="Protocol-2005"/>
        <assertion id="Protocol-2006"/>
        <assertion id="Protocol-2007"/>
        <assertion id="Protocol-2008"/>
        <assertion id="WSDLUsage-3001"/>
        <assertion id="WSDLUsage-3002"/>
        <assertion id="WSDLUsage-3003"/>
        <assertion id="WSDLUsage-3004"/>
      </assertions>
    <wsdlfragment>
    <![CDATA[
      ...
      <wsdl11:binding name="MyBinding1" type="MyPortType1">
         <wsdl11soap11:binding style="document" transport="http://www.w3.org/2010/soapjms/"/>
         <soapjms:timeToLive>7200000</soapjms:timeToLive>
         ...
      </wsdl11:binding>
      ...
      <wsdl11:service name="MyService1">
         ...
         <soapjms:deliveryMode>NON_PERSISTENT</soapjms:deliveryMode>
         ...
         <wsdl11:port binding="MyBinding1" name="MyPort1">
             <soapjms:priority>4</soapjms:priority>
             <wsdl11soap11:address location="jms:jndi:myQueue?targetService=MyPort1&amp;priority=5&amp;deliveryMode=PERSISTENT&amp;timeToLive=360000"/>
            ...
         ...
         </wsdl11:port>
         ...
      </wsdl11:service>
    ]]>
    </wsdlfragment>

    <message-exchange type="SOAP11-JMS-In-Out">
        <message from="A" to="B" document="messages/soap11/message0002request.html" name="message">
          <assert test="jmsmsg:JMSDeliveryMode = 2"/>
          <assert test="jmsmsg:JMSPriority = 5"/>
          <assert test="jmsmsg:JMSExpiration = {approximately 360000 ms greater than the current GMT value}"/>
        </message>
        <message from="B" to="A" document="messages/soap11/message0002response.html" name="message">
          <assert test="jmsmsg:JMSDestination = ${jms_response_dest}"/>
        </message>
    </message-exchange>
  </testcase>

  <testcase xml:id="test0014"
    origin=""
    cr="OPTIONAL">
    <title>JMS Message Header property priorities: WSDL 1.1 bindings</title>
    <description><![CDATA[Set deliveryMode, timeToLive, priority in different places in WSDL 1.1 JMS bindings to verify precedence.]]>
    </description>
    <assertions>
        <assertion id="Protocol-2005"/>
        <assertion id="Protocol-2006"/>
        <assertion id="Protocol-2007"/>
        <assertion id="Protocol-2008"/>
        <assertion id="WSDLUsage-3001"/>
        <assertion id="WSDLUsage-3002"/>
        <assertion id="WSDLUsage-3003"/>
        <assertion id="WSDLUsage-3004"/>
    </assertions>

    <wsdlfragment>
    <![CDATA[
      ...
      <wsdl11:binding name="MyBinding1" type="MyPortType1">
         <wsdl11soap11:binding style="document" transport="http://www.w3.org/2010/soapjms/"/>
         <soapjms:timeToLive>7200000</soapjms:timeToLive>
         <soapjms:priority>4</soapjms:priority>
         ...
      </wsdl11:binding>
      ...
      <wsdl11:service name="MyService1">
         ...
         <soapjms:deliveryMode>NON_PERSISTENT</soapjms:deliveryMode>
         <soapjms:priority>5</soapjms:priority>
         ...
         <wsdl11:port binding="MyBinding1" name="MyPort1">
             <soapjms:deliveryMode>PERSISTENT</soapjms:deliveryMode>
             <soapjms:timeToLive>3600000</soapjms:timeToLive>
             <wsdl11soap11:address location="jms:jndi:myQueue?targetService=MyPort1"/>
            ...
         ...
         </wsdl11:port>
         ...
      </wsdl11:service>
    ]]>
    </wsdlfragment>

    <message-exchange type="SOAP11-JMS-In-Out">
        <message from="A" to="B" document="messages/soap11/message0002request.html" name="message">
          <assert test="jmsmsg:JMSDeliveryMode = 2"/>
          <assert test="jmsmsg:JMSPriority = 5"/>
          <assert test="jmsmsg:JMSExpiration = {approximately 360000 ms greater than the current GMT value}"/>
        </message>
        <message from="B" to="A" document="messages/soap11/message0002response.html" name="message">
          <assert test="jmsmsg:JMSDestination = ${jms_response_dest}"/>
        </message>
    </message-exchange>
  </testcase>

  <testcase xml:id="test0015"
    origin=""
    cr="OPTIONAL">
    <title>JMS Message Header property priorities: WSDL 2.0 bindings</title>
    <description><![CDATA[Set deliveryMode, timeToLive, priority in different places in WSDL 2.0 JMS bindings to verify precedence.]]>
    </description>
    <assertions>
        <assertion id="Protocol-2005"/>
        <assertion id="Protocol-2006"/>
        <assertion id="Protocol-2007"/>
        <assertion id="Protocol-2008"/>
        <assertion id="WSDLUsage-3001"/>
        <assertion id="WSDLUsage-3002"/>
        <assertion id="WSDLUsage-3003"/>
        <assertion id="WSDLUsage-3004"/>
    </assertions>

    <wsdlfragment>
    <![CDATA[
      <wsdl20:description xmlns:wsoap="http://www.w3.org/ns/wsdl/soap">
         ...
         <wsdl20:binding name="MyBinding1" interface="MyInterface1" type="http://www.w3.org/ns/wsdl/soap" wsoap:version="1.1"
              wsoap:protocol="http://www.w3.org/2010/soapjms/">
         ...
         <soapjms:timeToLive>7200000</soapjms:timeToLive>
         ...
      </wsdl20:binding>
      ...
      <wsdl20:service name="MyService1" interface="MyInterface1">
         ...
         <soapjms:deliveryMode>NON_PERSISTENT</soapjms:deliveryMode>
         ...
         <wsdl20:endpoint binding="MyBinding1" name="MyPort1"
             address="jms:jndi:myQueue?targetService=MyPort1&amp;priority=5&amp;deliveryMode=PERSISTENT&amp;timeToLive=360000"/>
            ...
             <soapjms:priority>4</soapjms:priority>
            ...
         </wsdl20:endpoint>
         ...
       </wsdl20:service>
    </wsdl20:description>
    ]]>
    </wsdlfragment>

    <message-exchange type="SOAP11-JMS-In-Out">
        <message from="A" to="B" document="messages/soap11/message0002request.html" name="message">
          <assert test="jmsmsg:JMSDeliveryMode = 2"/>
          <assert test="jmsmsg:JMSPriority = 5"/>
          <assert test="jmsmsg:JMSExpiration = {approximately 360000 ms greater than the current GMT value}"/>
        </message>
        <message from="B" to="A" document="messages/soap11/message0002response.html" name="message">
          <assert test="jmsmsg:JMSDestination = ${jms_response_dest}"/>
        </message>
    </message-exchange>
  </testcase>

  <testcase xml:id="test0016"
    origin=""
    cr="OPTIONAL">
    <title>JMS Message Header property priorities: WSDL 2.0 bindings</title>
    <description><![CDATA[Set deliveryMode, timeToLive, priority in different places in WSDL 2.0 JMS bindings to verify precedence.]]>
    </description>
    <assertions>
        <assertion id="Protocol-2005"/>
        <assertion id="Protocol-2006"/>
        <assertion id="Protocol-2007"/>
        <assertion id="Protocol-2008"/>
        <assertion id="Protocol-2009"/>
        <assertion id="Protocol-2032"/>
        <assertion id="WSDLUsage-3001"/>
        <assertion id="WSDLUsage-3002"/>
        <assertion id="WSDLUsage-3003"/>
        <assertion id="WSDLUsage-3004"/>
    </assertions>

    <wsdlfragment>
    <![CDATA[
      <wsdl20:description xmlns:wsoap="http://www.w3.org/ns/wsdl/soap">
         ...
         <wsdl20:binding name="MyBinding1" interface="MyInterface1" type="http://www.w3.org/ns/wsdl/soap" wsoap:version="1.1"
              wsoap:protocol="http://www.w3.org/2010/soapjms/">
         ...
         <soapjms:timeToLive>7200000</soapjms:timeToLive>
         <soapjms:priority>4</soapjms:priority>
         ...
      </wsdl20:binding>
      ...
      <wsdl20:service name="MyService1" interface="MyInterface1">
         ...
         <soapjms:deliveryMode>NON_PERSISTENT</soapjms:deliveryMode>
         <soapjms:priority>5</soapjms:priority>
         ...
         <wsdl20:endpoint binding="MyBinding1" name="MyPort1"
             address="jms:jndi:myQueue?targetService=MyPort1"/>
            ...
             <soapjms:deliveryMode>PERSISTENT</soapjms:deliveryMode>
             <soapjms:timeToLive>3600000</soapjms:timeToLive>
            ...
         </wsdl20:endpoint>
         ...
       </wsdl20:service>
    </wsdl20:description>
    ]]>
    </wsdlfragment>

    <message-exchange type="SOAP12-JMS-In-Out">
        <message from="A" to="B" document="messages/soap12/message0002request.html" name="message">
          <assert test="jmsmsg:JMSDeliveryMode = 2"/>
          <assert test="jmsmsg:JMSPriority = 5"/>
          <assert test="jmsmsg:JMSExpiration = {approximately 360000 ms greater than the current GMT value}"/>
        </message>
        <message from="B" to="A" document="messages/soap12/message0002response.html" name="message">
          <assert test="jmsmsg:JMSDestination = ${jms_response_dest}"/>
        </message>
    </message-exchange>
  </testcase>

  <testcase xml:id="test0017"
    origin=""
    cr="OPTIONAL">
    <title>JMS Message Header properties: Set values in multiple sources</title>
    <description><![CDATA[Explicitly set deliveryMode, timeToLive, priority, and replyToName to different values in the JMS URI and environment.]]>
    </description>
    <assertions>
      <assertion id="Protocol-2001"/>
        <assertion id="Protocol-2005"/>
        <assertion id="Protocol-2006"/>
        <assertion id="Protocol-2007"/>
        <assertion id="Protocol-2008"/>
        <assertion id="Protocol-2009"/>
        <assertion id="Protocol-2060"/>
        <assertion id="Protocol-2032"/>
    </assertions>
    <uri>jms:jndi:jms/MyQueue?targetService=EchoPort&amp;deliveryModeType=PERSISTENT&amp;timeToLive=3600000&amp;priority=1&amp;replyToName=jms/MyReplyQueueA</uri>
    <environment>
      <property name="delivery mode" value="NON_PERSISTENT"/>
      <property name="time to live" value="10800000"/>
      <property name="priority" value="3"/>
      <property name="reply to name" value="jms/MyReplyQueueB"/>
    </environment>
    <message-exchange type="SOAP12-JMS-In-Out">
        <message from="A" to="B" document="messages/soap12/message0002request.html" name="message">
          <assert test="jmsmsg:JMSReplyTo = ${jms_response_destB}"/>
          <assert test="jmsmsg:JMSDeliveryMode = 1"/>
          <assert test="jmsmsg:JMSPriority = 3"/>
          <assert test="jmsmsg:JMSExpiration = {approximately 10800000 greater than the current GMT value}"/>
          <assert test="jmsmsg:JMSDestination = ${jms_request_dest}"/>
        </message>
        <message from="B" to="A" document="messages/soap12/message0002response.html" name="message">
          <assert test="jmsmsg:JMSDestination = ${jms_response_destB}"/>
        </message>
    </message-exchange>
  </testcase>

  <testcase xml:id="test0018"
    origin=""
    cr="OPTIONAL">
    <title>SOAP 1.1 one-way request to a topic</title>
    <description><![CDATA[SOAP 1.1 one-way request message sent to a destination topic.]]></description>
    <assertions>
    <assertion id="Protocol-2003"/>
    <assertion id="Protocol-2004"/>
    <assertion id="Protocol-2009"/>
    <assertion id="Protocol-2010"/>
    <assertion id="Protocol-2016"/>
    <assertion id="Protocol-2018"/>
    <assertion id="Protocol-2021"/>
    <assertion id="Protocol-2022"/>
    <assertion id="Protocol-2027"/>
    <assertion id="Protocol-2029"/>
    <assertion id="Protocol-2030"/>
    <assertion id="Protocol-2033"/>
    <assertion id="Protocol-2051"/>
    <assertion id="Protocol-2060"/>
    </assertions>
    <uri>jms:jndi:jms/MyTopic&amp;jndiConnectionFactoryName=jms/MyCF&amp;targetService=PingPort</uri>
    <message-exchange type="SOAP11-JMS-In-Only">
    <message from="A" to="B" document="messages/soap11/message0001.html" name="message">
        <assert test="jmsmsg:MessageType = bytes"/>
        <assert test="jmsmsg:MessageID = ${request_message_id}"/>
        <assert test="jmsmsg:JMSDeliveryMode = 2"/>
        <assert test="jmsmsg:JMSPriority = 4"/>
        <assert test="jmsmsg:JMSExpiration = 0"/>
        <assert test="jmsmsg:JMSReplyTo = null"/>
        <assert test="jmsmsg:JMSCorrelationID = null"/>
        <assert test="jmsmsg:JMSDestination = ${jms_request_dest}"/>
        <assert test="jmsmsg:JMSRedelivered = false"/>
        <assert test="jmsmsg:SOAPJMS_bindingVersion = '1.0'"/>
        <assert test="jmsmsg:SOAPJMS_targetService = 'PingPort'"/>
        <assert test="jmsmsg:SOAPJMS_contentType = 'text/xml'"/>
        <assert test="jmsmsg:SOAPJMS_soapAction = ''"/>
        <assert test="jmsmsg:SOAPJMS_requestURI = 'jms:jndi:jms/MyQueue'"/>
        <assert test="jmsmsg:JMSMessageBody = ${soap_request_msg}"/>
    </message>
    </message-exchange>
  </testcase>

  <testcase xml:id="test0019"
    origin=""
    cr="OPTIONAL">
    <title>SOAP 1.2 one-way request using TextMessage to a topic</title>
    <description><![CDATA[SOAP 1.2 one-way request message (using TextMessage) sent to a destination topic.
    Vendor-specific mechanism used to select TextMessage.]]></description>
    <assertions>
    <assertion id="Protocol-2003"/>
    <assertion id="Protocol-2004"/>
    <assertion id="Protocol-2009"/>
    <assertion id="Protocol-2010"/>
    <assertion id="Protocol-2016"/>
    <assertion id="Protocol-2018"/>
    <assertion id="Protocol-2021"/>
    <assertion id="Protocol-2022"/>
    <assertion id="Protocol-2027"/>
    <assertion id="Protocol-2029"/>
    <assertion id="Protocol-2030"/>
    <assertion id="Protocol-2032"/>
    <assertion id="Protocol-2051"/>
    <assertion id="Protocol-2060"/>
	<assertion id="Protocol-2072"/>
    </assertions>
    <uri>jms:jndi:jms/MyTopic&amp;jndiConnectionFactoryName=jms/MyCF&amp;targetService=PingPort</uri>
    <message-exchange type="SOAP12-JMS-In-Only">
    <message from="A" to="B" document="messages/soap12/message0001.html" name="message">
        <assert test="jmsmsg:MessageType = text"/>
        <assert test="jmsmsg:MessageID = ${request_message_id}"/>
        <assert test="jmsmsg:JMSDeliveryMode = 2"/>
        <assert test="jmsmsg:JMSPriority = 4"/>
        <assert test="jmsmsg:JMSExpiration = 0"/>
        <assert test="jmsmsg:JMSReplyTo = null"/>
        <assert test="jmsmsg:JMSCorrelationID = null"/>
        <assert test="jmsmsg:JMSDestination = ${jms_request_dest}"/>
        <assert test="jmsmsg:JMSRedelivered = false"/>
        <assert test="jmsmsg:SOAPJMS_bindingVersion = '1.0'"/>
        <assert test="jmsmsg:SOAPJMS_targetService = 'PingPort'"/>
        <assert test="jmsmsg:SOAPJMS_contentType = 'text/xml'"/>
        <assert test="jmsmsg:SOAPJMS_soapAction = ''"/>
        <assert test="jmsmsg:SOAPJMS_requestURI = 'jms:jndi:jms/MyQueue'"/>
        <assert test="jmsmsg:JMSMessageBody = ${soap_request_msg}"/>
    </message>
    </message-exchange>
  </testcase>


  <!-- end Property test cases -->

  <testcase xml:id="test0020"
    origin=""
    cr="OPTIONAL">
    <title>SOAP 1.1 two-way request jms &quot;queue&quot; variant, topicReplyToName</title>
    <description><![CDATA[SOAP 1.1 two-way request message sent to a request queue, and response message returned to response topic. 
Uses a "queue" variant URI which implementations may opt to support.
    ]]>
    </description>
    <assertions>
	<assertion id="Protocol-2003"/>
	<assertion id="Protocol-2004"/>
	<assertion id="Protocol-2010"/>
	<assertion id="Protocol-2016"/>
	<assertion id="Protocol-2018"/>
	<assertion id="Protocol-2021"/>
	<assertion id="Protocol-2022"/>
	<assertion id="Protocol-2027"/>
	<assertion id="Protocol-2029"/>
	<assertion id="Protocol-2030"/>
	<assertion id="Protocol-2033"/>
	<assertion id="Protocol-2036"/>
	<assertion id="Protocol-2037"/>
	<assertion id="Protocol-2038"/>
	<assertion id="Protocol-2050"/>
	<assertion id="Protocol-2070"/>
    </assertions>
    <uri>jms:queue:MyQueue&amp;topicReplyToName=MyReplyTopic</uri>
    <message-exchange type="SOAP11-JMS-In-Out">
	<message from="A" to="B" document="messages/soap11/message0002request.html" name="message">
	    <assert test="jmsmsg:MessageType = bytes"/>
	    <assert test="jmsmsg:MessageID = ${request_message_id}"/>
	    <assert test="jmsmsg:JMSDeliveryMode = 2"/>
	    <assert test="jmsmsg:JMSPriority = 4"/>
	    <assert test="jmsmsg:JMSExpiration = 0"/>
        <assert test="jmsmsg:JMSReplyTo = ${jms_response_dest} (refers to topic 'MyReplyTopic')"/>
	    <assert test="jmsmsg:JMSCorrelationID = 'Correlator0002'"/>
	    <assert test="jmsmsg:JMSDestination = ${jms_request_dest}"/>
	    <assert test="jmsmsg:JMSRedelivered = false"/>
	    <assert test="jmsmsg:SOAPJMS_bindingVersion = '1.0'"/>
	    <assert test="jmsmsg:SOAPJMS_contentType = 'text/xml'"/>
	    <assert test="jmsmsg:SOAPJMS_soapAction = ''"/>
	    <assert test="jmsmsg:SOAPJMS_requestURI = 'jms:queue:MyQueue'"/>
	    <assert test="jmsmsg:JMSMessageBody = ${soap_request_msg}"/>
	</message>
	<message from="B" to="A" document="messages/soap11/message0002response.html" name="message">
	    <assert test="jmsmsg:MessageType = bytes"/>
	    <assert test="jmsmsg:MessageID = ${response_message_id}"/>
	    <assert test="jmsmsg:JMSDeliveryMode = 2"/>
	    <assert test="jmsmsg:JMSPriority = 4"/>
	    <assert test="jmsmsg:JMSExpiration = 0"/>
	    <assert test="jmsmsg:JMSReplyTo = null"/>
	    <assert test="jmsmsg:JMSCorrelationID = 'Correlator0002'"/>
	    <assert test="jmsmsg:JMSDestination = ${jms_response_dest}"/>
	    <assert test="jmsmsg:JMSRedelivered = false"/>
	    <assert test="jmsmsg:SOAPJMS_bindingVersion = '1.0'"/>
	    <assert test="jmsmsg:SOAPJMS_contentType = 'text/xml'"/>
	    <assert test="jmsmsg:JMSMessageBody = ${soap_response_msg}"/>
	</message>
    </message-exchange>
  </testcase>


  <testcase xml:id="test1001" origin="" cr="REQUIRED" xml:space="preserve">
    <title>SOAP 1.1 two-way request unrecognized bindingVersion</title>
    <description>SOAP 1.1 two-way request message with unrecognized bindingVersion sent to a request queue, and fault message returned to response queue.</description>
    <assertions>
        <assertion id="Protocol-2010"/>
        <assertion id="Protocol-2011"/>
        <assertion id="Protocol-2020"/>
        <assertion id="Protocol-2033"/>
     </assertions>
    <uri>jms:jndi:jms/MyQueue&amp;jndiConnectionFactoryName=jms/MyCF&amp;targetService=EchoPort</uri>
    <message-exchange type="SOAP11-JMS-In-Out-Fault">
        <message from="A" to="B" document="messages/soap11/message0002request.html" name="message">
            <assert test="jmsmsg:MessageID = ${request_message_id}"/>
            <assert test="jmsmsg:JMSDeliveryMode = 2"/>
            <assert test="jmsmsg:JMSPriority = 4"/>
            <assert test="jmsmsg:JMSExpiration = 0"/>
            <assert test="jmsmsg:JMSReplyTo = ${jms_response_dest}"/>
            <assert test="jmsmsg:JMSCorrelationID = null"/>
            <assert test="jmsmsg:JMSDestination = ${jms_request_dest}"/>
            <assert test="jmsmsg:JMSRedelivered = false"/>
            <assert test="jmsmsg:JMSMessageBody = ${soap_request_msg}"/>
           <assert test="jmsmsg:SOAPJMS_bindingVersion = '0.3'"/>
           <assert test="jmsmsg:SOAPJMS_targetService = 'EchoPort'"/>
           <assert test="jmsmsg:SOAPJMS_contentType = 'text/xml'"/>
           <assert test="jmsmsg:SOAPJMS_soapAction = ''"/>
           <assert test="jmsmsg:SOAPJMS_requestURI = 'jms:jndi:jms/MyQueue'"/>
           <assert test="jmsmsg:MessageType = 'text'"/>
        </message>
        <message from="B" to="A" document="messages/soap11/unrecognizedBindingVersionFault.html" name="message">
            <assert test="jmsmsg:MessageID = ${response_message_id}"/>
            <assert test="jmsmsg:JMSDeliveryMode = 2"/>
            <assert test="jmsmsg:JMSPriority = 4"/>
            <assert test="jmsmsg:JMSExpiration = 0"/>
            <assert test="jmsmsg:JMSReplyTo = null"/>
            <assert test="jmsmsg:JMSCorrelationID = ${request_message_id}"/>
            <assert test="jmsmsg:JMSDestination = ${jms_response_dest}"/>
            <assert test="jmsmsg:JMSRedelivered = false"/>
            <assert test="jmsmsg:SOAPJMS_contentType = 'text/xml'"/>
            <assert test="jmsmsg:JMSMessageBody = ${soap_response_msg}"/>
            <assert test="jmsmsg:SOAPJMS_isFault = true"/>
         </message>
    </message-exchange>
  </testcase>

  <testcase xml:id="test1101" origin="" cr="REQUIRED" xml:space="preserve">
    <title>SOAP 1.2 two-way request unrecognized bindingVersion</title>
    <description>SOAP 1.2 two-way request message with unrecognized bindingVersion sent to a request queue, and fault message returned to response queue.</description>
    <assertions>
        <assertion id="Protocol-2010"/>
        <assertion id="Protocol-2011"/>
        <assertion id="Protocol-2020"/>
        <assertion id="Protocol-2032"/>
     </assertions>
    <uri>jms:jndi:jms/MyQueue&amp;jndiConnectionFactoryName=jms/MyCF&amp;targetService=EchoPort</uri>
    <message-exchange type="SOAP12-JMS-In-Out-Fault">
      <message from="A" to="B" document="messages/soap12/message0002request.html" name="message">
            <assert test="jmsmsg:MessageID = ${request_message_id}"/>
            <assert test="jmsmsg:JMSDeliveryMode = 2"/>
            <assert test="jmsmsg:JMSPriority = 4"/>
            <assert test="jmsmsg:JMSExpiration = 0"/>
            <assert test="jmsmsg:JMSReplyTo = ${jms_response_dest}"/>
            <assert test="jmsmsg:JMSCorrelationID = null"/>
            <assert test="jmsmsg:JMSDestination = ${jms_request_dest}"/>
            <assert test="jmsmsg:JMSRedelivered = false"/>
            <assert test="jmsmsg:JMSMessageBody = ${soap_request_msg}"/>
           <assert test="jmsmsg:SOAPJMS_bindingVersion = '0.3'"/>
           <assert test="jmsmsg:SOAPJMS_targetService = 'EchoPort'"/>
           <assert test="jmsmsg:SOAPJMS_contentType = 'application/soap+xml'"/>
           <assert test="jmsmsg:SOAPJMS_soapAction = ''"/>
           <assert test="jmsmsg:SOAPJMS_requestURI = 'jms:jndi:jms/MyQueue'"/>
           <assert test="jmsmsg:MessageType = 'text'"/>
        </message>
        <message from="B" to="A" document="messages/soap12/unrecognizedBindingVersionFault.html" name="message">
            <assert test="jmsmsg:MessageID = ${response_message_id}"/>
            <assert test="jmsmsg:JMSDeliveryMode = 2"/>
            <assert test="jmsmsg:JMSPriority = 4"/>
            <assert test="jmsmsg:JMSExpiration = 0"/>
            <assert test="jmsmsg:JMSReplyTo = null"/>
            <assert test="jmsmsg:JMSCorrelationID = ${request_message_id}"/>
            <assert test="jmsmsg:JMSDestination = ${jms_response_dest}"/>
            <assert test="jmsmsg:JMSRedelivered = false"/>
            <assert test="jmsmsg:SOAPJMS_contentType = 'application/soap+xml'"/>
            <assert test="jmsmsg:JMSMessageBody = ${soap_response_msg}"/>
            <assert test="jmsmsg:SOAPJMS_isFault = true"/>
         </message>
    </message-exchange>
  </testcase>

  <testcase xml:id="test1002" origin="" cr="REQUIRED" xml:space="preserve">
    <title>SOAP 1.1 two-way request unsupported JMS message format</title>
    <description>SOAP 1.1 two-way request message with unsupported JMS message format sent to a request queue, and fault message returned to response queue.</description>
    <assertions>
        <assertion id="Protocol-2020"/>
        <assertion id="Protocol-2027"/>
        <assertion id="Protocol-2028"/>
        <assertion id="Protocol-2033"/>
     </assertions>
    <uri>jms:jndi:jms/MyQueue&amp;jndiConnectionFactoryName=jms/MyCF&amp;targetService=EchoPort</uri>
    <message-exchange type="SOAP11-JMS-In-Out-Fault">
        <message from="A" to="B" document="messages/soap11/message0002request.html" name="message">
            <assert test="jmsmsg:MessageID = ${request_message_id}"/>
            <assert test="jmsmsg:JMSDeliveryMode = 2"/>
            <assert test="jmsmsg:JMSPriority = 4"/>
            <assert test="jmsmsg:JMSExpiration = 0"/>
            <assert test="jmsmsg:JMSReplyTo = ${jms_response_dest}"/>
            <assert test="jmsmsg:JMSCorrelationID = null"/>
            <assert test="jmsmsg:JMSDestination = ${jms_request_dest}"/>
            <assert test="jmsmsg:JMSRedelivered = false"/>
            <assert test="jmsmsg:JMSMessageBody = ${soap_request_msg}"/>
           <assert test="jmsmsg:SOAPJMS_bindingVersion = '1.0'"/>
           <assert test="jmsmsg:SOAPJMS_targetService = 'EchoPort'"/>
           <assert test="jmsmsg:SOAPJMS_contentType = 'text/xml'"/>
           <assert test="jmsmsg:SOAPJMS_soapAction = ''"/>
           <assert test="jmsmsg:SOAPJMS_requestURI = 'jms:jndi:jms/MyQueue'"/>
           <assert test="jmsmsg:MessageType = 'stream'"/>

        </message>
        <message from="B" to="A" document="messages/soap11/unsupportedJMSMessageFormatFault.html" name="message">
            <assert test="jmsmsg:MessageID = ${response_message_id}"/>
            <assert test="jmsmsg:JMSDeliveryMode = 2"/>
            <assert test="jmsmsg:JMSPriority = 4"/>
            <assert test="jmsmsg:JMSExpiration = 0"/>
            <assert test="jmsmsg:JMSReplyTo = null"/>
            <assert test="jmsmsg:JMSCorrelationID = ${request_message_id}"/>
            <assert test="jmsmsg:JMSDestination = ${jms_response_dest}"/>
            <assert test="jmsmsg:JMSRedelivered = false"/>
            <assert test="jmsmsg:SOAPJMS_contentType = 'text/xml'"/>
            <assert test="jmsmsg:JMSMessageBody = ${soap_response_msg}"/>
            <assert test="jmsmsg:SOAPJMS_isFault = true"/>

         </message>
    </message-exchange>
  </testcase>

  <testcase xml:id="test1102" origin="" cr="REQUIRED" xml:space="preserve">
    <title>SOAP 1.2 two-way request unsupported JMS message format</title>
    <description>SOAP 1.2 two-way request message with unsupported JMS message format sent to a request queue, and fault message returned to response queue.</description>
    <assertions>
        <assertion id="Protocol-2020"/>
        <assertion id="Protocol-2027"/>
        <assertion id="Protocol-2028"/>
        <assertion id="Protocol-2032"/>
     </assertions>
    <uri>jms:jndi:jms/MyQueue&amp;jndiConnectionFactoryName=jms/MyCF&amp;targetService=EchoPort</uri>
    <message-exchange type="SOAP12-JMS-In-Out-Fault">
        <message from="A" to="B" document="messages/soap12/message0002request.html" name="message">
            <assert test="jmsmsg:MessageID = ${request_message_id}"/>
            <assert test="jmsmsg:JMSDeliveryMode = 2"/>
            <assert test="jmsmsg:JMSPriority = 4"/>
            <assert test="jmsmsg:JMSExpiration = 0"/>
            <assert test="jmsmsg:JMSReplyTo = ${jms_response_dest}"/>
            <assert test="jmsmsg:JMSCorrelationID = null"/>
            <assert test="jmsmsg:JMSDestination = ${jms_request_dest}"/>
            <assert test="jmsmsg:JMSRedelivered = false"/>
            <assert test="jmsmsg:JMSMessageBody = ${soap_request_msg}"/>
           <assert test="jmsmsg:SOAPJMS_bindingVersion = '1.0'"/>
           <assert test="jmsmsg:SOAPJMS_targetService = 'EchoPort'"/>
           <assert test="jmsmsg:SOAPJMS_contentType = 'application/soap+xml'"/>
           <assert test="jmsmsg:SOAPJMS_soapAction = ''"/>
           <assert test="jmsmsg:SOAPJMS_requestURI = 'jms:jndi:jms/MyQueue'"/>
           <assert test="jmsmsg:MessageType = 'stream'"/>

        </message>
        <message from="B" to="A" document="messages/soap12/unsupportedJMSMessageFormatFault.html" name="message">
            <assert test="jmsmsg:MessageID = ${response_message_id}"/>
            <assert test="jmsmsg:JMSDeliveryMode = 2"/>
            <assert test="jmsmsg:JMSPriority = 4"/>
            <assert test="jmsmsg:JMSExpiration = 0"/>
            <assert test="jmsmsg:JMSReplyTo = null"/>
            <assert test="jmsmsg:JMSCorrelationID = ${request_message_id}"/>
            <assert test="jmsmsg:JMSDestination = ${jms_response_dest}"/>
            <assert test="jmsmsg:JMSRedelivered = false"/>
            <assert test="jmsmsg:SOAPJMS_contentType = 'application/soap+xml'"/>
            <assert test="jmsmsg:JMSMessageBody = ${soap_response_msg}"/>
            <assert test="jmsmsg:SOAPJMS_isFault = true"/>

         </message>
    </message-exchange>
  </testcase>

  <testcase xml:id="test1003" origin="" cr="REQUIRED" xml:space="preserve">
    <title>SOAP 1.1 two-way request with content-type charset mismatch</title>
    <description>SOAP 1.1 two-way request message with charset mismatch between contentType header and XML encoding statement sent to a request queue, and fault message returned to response queue.</description>
    <assertions>
        <assertion id="Protocol-2012"/>
        <assertion id="Protocol-2020"/>
        <assertion id="Protocol-2033"/>
     </assertions>
    <uri>jms:jndi:jms/MyQueue&amp;jndiConnectionFactoryName=jms/MyCF&amp;targetService=EchoPort</uri>
    <message-exchange type="SOAP11-JMS-In-Out-Fault">
        <message from="A" to="B" document="messages/soap11/message0002request.html" name="message">
            <assert test="jmsmsg:MessageID = ${request_message_id}"/>
            <assert test="jmsmsg:JMSDeliveryMode = 2"/>
            <assert test="jmsmsg:JMSPriority = 4"/>
            <assert test="jmsmsg:JMSExpiration = 0"/>
            <assert test="jmsmsg:JMSReplyTo = ${jms_response_dest}"/>
            <assert test="jmsmsg:JMSCorrelationID = null"/>
            <assert test="jmsmsg:JMSDestination = ${jms_request_dest}"/>
            <assert test="jmsmsg:JMSRedelivered = false"/>
            <assert test="jmsmsg:JMSMessageBody = ${soap_request_msg}"/>
           <assert test="jmsmsg:SOAPJMS_bindingVersion = '1.0'"/>
           <assert test="jmsmsg:SOAPJMS_targetService = 'EchoPort'"/>
           <assert test="jmsmsg:SOAPJMS_contentType = 'text/xml; charset=UTF-16'"/>
           <assert test="jmsmsg:SOAPJMS_soapAction = ''"/>
           <assert test="jmsmsg:SOAPJMS_requestURI = 'jms:jndi:jms/MyQueue'"/>
           <assert test="jmsmsg:MessageType = 'text'"/>

        </message>
        <message from="B" to="A" document="messages/soap11/contentTypeMismatchFault.html" name="message">
            <assert test="jmsmsg:MessageID = ${response_message_id}"/>
            <assert test="jmsmsg:JMSDeliveryMode = 2"/>
            <assert test="jmsmsg:JMSPriority = 4"/>
            <assert test="jmsmsg:JMSExpiration = 0"/>
            <assert test="jmsmsg:JMSReplyTo = null"/>
            <assert test="jmsmsg:JMSCorrelationID = ${request_message_id}"/>
            <assert test="jmsmsg:JMSDestination = ${jms_response_dest}"/>
            <assert test="jmsmsg:JMSRedelivered = false"/>
            <assert test="jmsmsg:SOAPJMS_contentType = 'text/xml'"/>
            <assert test="jmsmsg:JMSMessageBody = ${soap_response_msg}"/>
            <assert test="jmsmsg:SOAPJMS_isFault = true"/>
         </message>
    </message-exchange>
  </testcase>

  <testcase xml:id="test1103" origin="" cr="REQUIRED" xml:space="preserve">
    <title>SOAP 1.2 two-way request with content-type charset mismatch</title>
    <description>SOAP 1.2 two-way request message with charset mismatch between contentType header and XML encoding statement sent to a request queue, and fault message returned to response queue.</description>
    <assertions>
        <assertion id="Protocol-2012"/>
        <assertion id="Protocol-2020"/>
 	    <assertion id="Protocol-2032"/>
     </assertions>
    <uri>jms:jndi:jms/MyQueue&amp;jndiConnectionFactoryName=jms/MyCF&amp;targetService=EchoPort</uri>
    <message-exchange type="SOAP12-JMS-In-Out-Fault">
        <message from="A" to="B" document="messages/soap12/message0002request.html" name="message">
            <assert test="jmsmsg:MessageID = ${request_message_id}"/>
            <assert test="jmsmsg:JMSDeliveryMode = 2"/>
            <assert test="jmsmsg:JMSPriority = 4"/>
            <assert test="jmsmsg:JMSExpiration = 0"/>
            <assert test="jmsmsg:JMSReplyTo = ${jms_response_dest}"/>
            <assert test="jmsmsg:JMSCorrelationID = null"/>
            <assert test="jmsmsg:JMSDestination = ${jms_request_dest}"/>
            <assert test="jmsmsg:JMSRedelivered = false"/>
            <assert test="jmsmsg:JMSMessageBody = ${soap_request_msg}"/>
           <assert test="jmsmsg:SOAPJMS_bindingVersion = '1.0'"/>
           <assert test="jmsmsg:SOAPJMS_targetService = 'EchoPort'"/>
           <assert test="jmsmsg:SOAPJMS_contentType = 'text/xml; charset=UTF-16'"/>
           <assert test="jmsmsg:SOAPJMS_soapAction = ''"/>
           <assert test="jmsmsg:SOAPJMS_requestURI = 'jms:jndi:jms/MyQueue'"/>
           <assert test="jmsmsg:MessageType = 'text'"/>
        </message>
        <message from="B" to="A" document="messages/soap12/contentTypeMismatchFault.html" name="message">
            <assert test="jmsmsg:MessageID = ${response_message_id}"/>
            <assert test="jmsmsg:JMSDeliveryMode = 2"/>
            <assert test="jmsmsg:JMSPriority = 4"/>
            <assert test="jmsmsg:JMSExpiration = 0"/>
            <assert test="jmsmsg:JMSReplyTo = null"/>
            <assert test="jmsmsg:JMSCorrelationID = ${request_message_id}"/>
            <assert test="jmsmsg:JMSDestination = ${jms_response_dest}"/>
            <assert test="jmsmsg:JMSRedelivered = false"/>
            <assert test="jmsmsg:SOAPJMS_contentType = 'application/soap+xml'"/>
            <assert test="jmsmsg:JMSMessageBody = ${soap_response_msg}"/>
            <assert test="jmsmsg:SOAPJMS_isFault = true"/>
         </message>
    </message-exchange>
  </testcase>

  <testcase xml:id="test1004" origin="" cr="REQUIRED" xml:space="preserve">
    <title>SOAP 1.1 two-way request malformed requestURI</title>
    <description>SOAP 1.1 two-way request message with malformed requestURI sent to a request queue, and fault message returned to response queue.</description>
    <assertions>
        <assertion id="Protocol-2020"/>
        <assertion id="Protocol-2025"/>
     </assertions>
    <uri>jms:jndi:jms/MyQueue&amp;jndiConnectionFactoryName=jms/MyCF&amp;targetService=EchoPort</uri>
    <message-exchange type="SOAP11-JMS-In-Out-Fault">
        <message from="A" to="B" document="messages/soap11/message0002request.html" name="message">
            <assert test="jmsmsg:MessageID = ${request_message_id}"/>
            <assert test="jmsmsg:JMSDeliveryMode = 2"/>
            <assert test="jmsmsg:JMSPriority = 4"/>
            <assert test="jmsmsg:JMSExpiration = 0"/>
            <assert test="jmsmsg:JMSReplyTo = ${jms_response_dest}"/>
            <assert test="jmsmsg:JMSCorrelationID = null"/>
            <assert test="jmsmsg:JMSDestination = ${jms_request_dest}"/>
            <assert test="jmsmsg:JMSRedelivered = false"/>
            <assert test="jmsmsg:JMSMessageBody = ${soap_request_msg}"/>
           <assert test="jmsmsg:SOAPJMS_bindingVersion = '1.0'"/>
           <assert test="jmsmsg:SOAPJMS_targetService = 'EchoPort'"/>
           <assert test="jmsmsg:SOAPJMS_contentType = 'text/xml'"/>
           <assert test="jmsmsg:SOAPJMS_soapAction = ''"/>
           <assert test="jmsmsg:SOAPJMS_requestURI = 'jms:domain:jms/MyQueue'"/>
           <assert test="jmsmsg:MessageType = 'text'"/>
        </message>
        <message from="B" to="A" document="messages/soap11/malformedRequestURIFault.html" name="message">
            <assert test="jmsmsg:MessageID = ${response_message_id}"/>
            <assert test="jmsmsg:JMSDeliveryMode = 2"/>
            <assert test="jmsmsg:JMSPriority = 4"/>
            <assert test="jmsmsg:JMSExpiration = 0"/>
            <assert test="jmsmsg:JMSReplyTo = null"/>
            <assert test="jmsmsg:JMSCorrelationID = ${request_message_id}"/>
            <assert test="jmsmsg:JMSDestination = ${jms_response_dest}"/>
            <assert test="jmsmsg:JMSRedelivered = false"/>
            <assert test="jmsmsg:SOAPJMS_contentType = 'text/xml'"/>
            <assert test="jmsmsg:JMSMessageBody = ${soap_response_msg}"/>
            <assert test="jmsmsg:SOAPJMS_isFault = true"/>
         </message>
    </message-exchange>
  </testcase>

  <testcase xml:id="test1104" origin="" cr="REQUIRED" xml:space="preserve">
    <title>SOAP 1.2 two-way request malformed requestURI</title>
    <description>SOAP 1.2 two-way request message with malformed requestURI sent to a request queue, and fault message returned to response queue.</description>
    <assertions>
        <assertion id="Protocol-2020"/>
        <assertion id="Protocol-2025"/>
     </assertions>
    <uri>jms:jndi:&amp;jndiConnectionFactoryName=jms/MyCF&amp;targetService=EchoPort</uri>
    <message-exchange type="SOAP12-JMS-In-Out-Fault">
        <message from="A" to="B" document="messages/soap12/message0002request.html" name="message">
            <assert test="jmsmsg:MessageID = ${request_message_id}"/>
            <assert test="jmsmsg:JMSDeliveryMode = 2"/>
            <assert test="jmsmsg:JMSPriority = 4"/>
            <assert test="jmsmsg:JMSExpiration = 0"/>
            <assert test="jmsmsg:JMSReplyTo = ${jms_response_dest}"/>
            <assert test="jmsmsg:JMSCorrelationID = null"/>
            <assert test="jmsmsg:JMSDestination = ${jms_request_dest}"/>
            <assert test="jmsmsg:JMSRedelivered = false"/>
            <assert test="jmsmsg:JMSMessageBody = ${soap_request_msg}"/>
           <assert test="jmsmsg:SOAPJMS_bindingVersion = '1.0'"/>
           <assert test="jmsmsg:SOAPJMS_targetService = 'EchoPort'"/>
           <assert test="jmsmsg:SOAPJMS_contentType = 'application/soap+xml'"/>
           <assert test="jmsmsg:SOAPJMS_soapAction = ''"/>
           <assert test="jmsmsg:SOAPJMS_requestURI = 'jms:jndi:'"/>
           <assert test="jmsmsg:MessageType = 'text'"/>
        </message>
        <message from="B" to="A" document="messages/soap12/malformedRequestURIFault.html" name="message">
            <assert test="jmsmsg:MessageID = ${response_message_id}"/>
            <assert test="jmsmsg:JMSDeliveryMode = 2"/>
            <assert test="jmsmsg:JMSPriority = 4"/>
            <assert test="jmsmsg:JMSExpiration = 0"/>
            <assert test="jmsmsg:JMSReplyTo = null"/>
            <assert test="jmsmsg:JMSCorrelationID = ${request_message_id}"/>
            <assert test="jmsmsg:JMSDestination = ${jms_response_dest}"/>
            <assert test="jmsmsg:JMSRedelivered = false"/>
            <assert test="jmsmsg:SOAPJMS_contentType = 'application/soap+xml'"/>
            <assert test="jmsmsg:JMSMessageBody = ${soap_response_msg}"/>
            <assert test="jmsmsg:SOAPJMS_isFault = true"/>
         </message>
    </message-exchange>
  </testcase>

  <testcase xml:id="test1005" origin="" cr="REQUIRED" xml:space="preserve">
    <title>SOAP 1.1 two-way request soapAction mismatch</title>
    <description>SOAP 1.1 two-way request message with soapAction mismatch sent to a request queue, and fault message returned to response queue.</description>
    <assertions>
        <assertion id="Protocol-2019"/>
        <assertion id="Protocol-2020"/>
     </assertions>
    <uri>jms:jndi:jms/MyQueue&amp;jndiConnectionFactoryName=jms/MyCF&amp;targetService=EchoPort</uri>
    <message-exchange type="SOAP11-JMS-In-Out-Fault">
        <message from="A" to="B" document="messages/soap11/message0002request.html" name="message">
            <assert test="jmsmsg:MessageID = ${request_message_id}"/>
            <assert test="jmsmsg:JMSDeliveryMode = 2"/>
            <assert test="jmsmsg:JMSPriority = 4"/>
            <assert test="jmsmsg:JMSExpiration = 0"/>
            <assert test="jmsmsg:JMSReplyTo = ${jms_response_dest}"/>
            <assert test="jmsmsg:JMSCorrelationID = null"/>
            <assert test="jmsmsg:JMSDestination = ${jms_request_dest}"/>
            <assert test="jmsmsg:JMSRedelivered = false"/>
            <assert test="jmsmsg:JMSMessageBody = ${soap_request_msg}"/>
           <assert test="jmsmsg:SOAPJMS_bindingVersion = '1.0'"/>
           <assert test="jmsmsg:SOAPJMS_targetService = 'EchoPort'"/>
           <assert test="jmsmsg:SOAPJMS_contentType = 'text/xml'"/>
           <assert test="jmsmsg:SOAPJMS_soapAction = 'urn:nomatch'"/>
           <assert test="jmsmsg:SOAPJMS_requestURI = 'jms:jndi:jms/MyQueue'"/>
           <assert test="jmsmsg:MessageType = 'text'"/>
        </message>
        <message from="B" to="A" document="messages/soap11/mismatchedSoapActionFault.html" name="message">
            <assert test="jmsmsg:MessageID = ${response_message_id}"/>
            <assert test="jmsmsg:JMSDeliveryMode = 2"/>
            <assert test="jmsmsg:JMSPriority = 4"/>
            <assert test="jmsmsg:JMSExpiration = 0"/>
            <assert test="jmsmsg:JMSReplyTo = null"/>
            <assert test="jmsmsg:JMSCorrelationID = ${request_message_id}"/>
            <assert test="jmsmsg:JMSDestination = ${jms_response_dest}"/>
            <assert test="jmsmsg:JMSRedelivered = false"/>
            <assert test="jmsmsg:SOAPJMS_contentType = 'text/xml'"/>
            <assert test="jmsmsg:JMSMessageBody = ${soap_response_msg}"/>
            <assert test="jmsmsg:SOAPJMS_isFault = true"/>
         </message>
    </message-exchange>
  </testcase>

  <testcase xml:id="test1105" origin="" cr="REQUIRED" xml:space="preserve">
    <title>SOAP 1.2 two-way request soapAction mismatch</title>
    <description>SOAP 1.2 two-way request message with soapAction mmismatch sent to a request queue, and fault message returned to response queue.</description>
    <assertions>
        <assertion id="Protocol-2019"/>
        <assertion id="Protocol-2020"/>
     </assertions>
    <uri>jms:jndi:jms/MyQueue&amp;jndiConnectionFactoryName=jms/MyCF&amp;targetService=EchoPort</uri>
    <message-exchange type="SOAP12-JMS-In-Out-Fault">
        <message from="A" to="B" document="messages/soap12/message0002request.html" name="message">
            <assert test="jmsmsg:MessageID = ${request_message_id}"/>
            <assert test="jmsmsg:JMSDeliveryMode = 2"/>
            <assert test="jmsmsg:JMSPriority = 4"/>
            <assert test="jmsmsg:JMSExpiration = 0"/>
            <assert test="jmsmsg:JMSReplyTo = ${jms_response_dest}"/>
            <assert test="jmsmsg:JMSCorrelationID = null"/>
            <assert test="jmsmsg:JMSDestination = ${jms_request_dest}"/>
            <assert test="jmsmsg:JMSRedelivered = false"/>
            <assert test="jmsmsg:JMSMessageBody = ${soap_request_msg}"/>
           <assert test="jmsmsg:SOAPJMS_bindingVersion = '1.0'"/>
           <assert test="jmsmsg:SOAPJMS_targetService = 'EchoPort'"/>
           <assert test="jmsmsg:SOAPJMS_contentType = 'application/soap+xml; action=&quot;urn:someaction&quot;'"/>
           <assert test="jmsmsg:SOAPJMS_soapAction = 'urn:nomatch'"/>
           <assert test="jmsmsg:SOAPJMS_requestURI = 'jms:jndi:jms/MyQueue'"/>
           <assert test="jmsmsg:MessageType = 'text'"/>

        </message>
        <message from="B" to="A" document="messages/soap12/mismatchedSoapActionFault.html" name="message">
            <assert test="jmsmsg:MessageID = ${response_message_id}"/>
            <assert test="jmsmsg:JMSDeliveryMode = 2"/>
            <assert test="jmsmsg:JMSPriority = 4"/>
            <assert test="jmsmsg:JMSExpiration = 0"/>
            <assert test="jmsmsg:JMSReplyTo = null"/>
            <assert test="jmsmsg:JMSCorrelationID = ${request_message_id}"/>
            <assert test="jmsmsg:JMSDestination = ${jms_response_dest}"/>
            <assert test="jmsmsg:JMSRedelivered = false"/>
            <assert test="jmsmsg:SOAPJMS_contentType = 'application/soap+xml'"/>
            <assert test="jmsmsg:JMSMessageBody = ${soap_response_msg}"/>
            <assert test="jmsmsg:SOAPJMS_isFault = true"/>

         </message>
    </message-exchange>
  </testcase>

  <testcase xml:id="test1006" origin="" cr="REQUIRED" xml:space="preserve">
    <title>SOAP 1.1 two-way request missing content type</title>
    <description>SOAP 1.1 two-way request message with missing content type sent to a request queue, and fault message returned to response queue.</description>
    <assertions>
        <assertion id="Protocol-2016"/>
        <assertion id="Protocol-2020"/>
     </assertions>
    <uri>jms:jndi:jms/MyQueue&amp;jndiConnectionFactoryName=jms/MyCF&amp;targetService=EchoPort</uri>
    <message-exchange type="SOAP11-JMS-In-Out-Fault">
        <message from="A" to="B" document="messages/soap11/message0002request.html" name="message">
            <assert test="jmsmsg:MessageID = ${request_message_id}"/>
            <assert test="jmsmsg:JMSDeliveryMode = 2"/>
            <assert test="jmsmsg:JMSPriority = 4"/>
            <assert test="jmsmsg:JMSExpiration = 0"/>
            <assert test="jmsmsg:JMSReplyTo = ${jms_response_dest}"/>
            <assert test="jmsmsg:JMSCorrelationID = null"/>
            <assert test="jmsmsg:JMSDestination = ${jms_request_dest}"/>
            <assert test="jmsmsg:JMSRedelivered = false"/>
            <assert test="jmsmsg:JMSMessageBody = ${soap_request_msg}"/>
           <assert test="jmsmsg:SOAPJMS_bindingVersion = '1.0'"/>
           <assert test="jmsmsg:SOAPJMS_contentType = null"/>
           <assert test="jmsmsg:SOAPJMS_targetService = 'EchoPort'"/>
           <assert test="jmsmsg:SOAPJMS_soapAction = ''"/>
           <assert test="jmsmsg:SOAPJMS_requestURI = 'jms:jndi:jms/MyQueue'"/>
           <assert test="jmsmsg:MessageType = 'text'"/>
        </message>
        <message from="B" to="A" document="messages/soap11/missingContentTypeFault.html" name="message">
            <assert test="jmsmsg:MessageID = ${response_message_id}"/>
            <assert test="jmsmsg:JMSDeliveryMode = 2"/>
            <assert test="jmsmsg:JMSPriority = 4"/>
            <assert test="jmsmsg:JMSExpiration = 0"/>
            <assert test="jmsmsg:JMSReplyTo = null"/>
            <assert test="jmsmsg:JMSCorrelationID = ${request_message_id}"/>
            <assert test="jmsmsg:JMSDestination = ${jms_response_dest}"/>
            <assert test="jmsmsg:JMSRedelivered = false"/>
            <assert test="jmsmsg:SOAPJMS_contentType = 'text/xml'"/>
            <assert test="jmsmsg:JMSMessageBody = ${soap_response_msg}"/>
            <assert test="jmsmsg:SOAPJMS_isFault = true"/>
         </message>
    </message-exchange>
  </testcase>

  <testcase xml:id="test1106" origin="" cr="REQUIRED" xml:space="preserve">
    <title>SOAP 1.2 two-way request missing content type</title>
    <description>SOAP 1.2 two-way request message with missing content type sent to a request queue, and fault message returned to response queue.</description>
    <assertions>
        <assertion id="Protocol-2016"/>
        <assertion id="Protocol-2020"/>
     </assertions>
    <uri>jms:jndi:jms/MyQueue&amp;jndiConnectionFactoryName=jms/MyCF&amp;targetService=EchoPort</uri>
    <message-exchange type="SOAP12-JMS-In-Out-Fault">
        <message from="A" to="B" document="messages/soap12/message0002request.html" name="message">
            <assert test="jmsmsg:MessageID = ${request_message_id}"/>
            <assert test="jmsmsg:JMSDeliveryMode = 2"/>
            <assert test="jmsmsg:JMSPriority = 4"/>
            <assert test="jmsmsg:JMSExpiration = 0"/>
            <assert test="jmsmsg:JMSReplyTo = ${jms_response_dest}"/>
            <assert test="jmsmsg:JMSCorrelationID = null"/>
            <assert test="jmsmsg:JMSDestination = ${jms_request_dest}"/>
            <assert test="jmsmsg:JMSRedelivered = false"/>
            <assert test="jmsmsg:JMSMessageBody = ${soap_request_msg}"/>
           <assert test="jmsmsg:SOAPJMS_bindingVersion = '1.0'"/>
           <assert test="jmsmsg:SOAPJMS_contentType = null"/>
           <assert test="jmsmsg:SOAPJMS_targetService = 'EchoPort'"/>
           <assert test="jmsmsg:SOAPJMS_soapAction = ''"/>
           <assert test="jmsmsg:SOAPJMS_requestURI = 'jms:jndi:jms/MyQueue'"/>
           <assert test="jmsmsg:MessageType = 'text'"/>
        </message>
        <message from="B" to="A" document="messages/soap12/missingContentTypeFault.html" name="message">
            <assert test="jmsmsg:MessageID = ${response_message_id}"/>
            <assert test="jmsmsg:JMSDeliveryMode = 2"/>
            <assert test="jmsmsg:JMSPriority = 4"/>
            <assert test="jmsmsg:JMSExpiration = 0"/>
            <assert test="jmsmsg:JMSReplyTo = null"/>
            <assert test="jmsmsg:JMSCorrelationID = ${request_message_id}"/>
            <assert test="jmsmsg:JMSDestination = ${jms_response_dest}"/>
            <assert test="jmsmsg:JMSRedelivered = false"/>
            <assert test="jmsmsg:SOAPJMS_contentType = 'application/soap+xml'"/>
            <assert test="jmsmsg:JMSMessageBody = ${soap_response_msg}"/>
            <assert test="jmsmsg:SOAPJMS_isFault = true"/>
         </message>
    </message-exchange>
  </testcase>

  <testcase xml:id="test1007" origin="" cr="REQUIRED" xml:space="preserve">
    <title>SOAP 1.1 two-way request missing request URI</title>
    <description>SOAP 1.1 two-way request message with missing request URI sent to a request queue, and fault message returned to response queue.</description>
    <assertions>
        <assertion id="Protocol-2020"/>
        <assertion id="Protocol-2022"/>
     </assertions>
    <uri>jms:jndi:jms/MyQueue&amp;jndiConnectionFactoryName=jms/MyCF&amp;targetService=EchoPort</uri>
    <message-exchange type="SOAP11-JMS-In-Out-Fault">
        <message from="A" to="B" document="messages/soap11/message0002request.html" name="message">
            <assert test="jmsmsg:MessageID = ${request_message_id}"/>
            <assert test="jmsmsg:JMSDeliveryMode = 2"/>
            <assert test="jmsmsg:JMSPriority = 4"/>
            <assert test="jmsmsg:JMSExpiration = 0"/>
            <assert test="jmsmsg:JMSReplyTo = ${jms_response_dest}"/>
            <assert test="jmsmsg:JMSCorrelationID = null"/>
            <assert test="jmsmsg:JMSDestination = ${jms_request_dest}"/>
            <assert test="jmsmsg:JMSRedelivered = false"/>
            <assert test="jmsmsg:JMSMessageBody = ${soap_request_msg}"/>
           <assert test="jmsmsg:SOAPJMS_bindingVersion = '1.0'"/>
           <assert test="jmsmsg:SOAPJMS_targetService = 'EchoPort'"/>
           <assert test="jmsmsg:SOAPJMS_contentType = 'text/xml'"/>
           <assert test="jmsmsg:SOAPJMS_requestURI = null"/>
           <assert test="jmsmsg:SOAPJMS_soapAction = ''"/>
           <assert test="jmsmsg:MessageType = 'text'"/>

        </message>
        <message from="B" to="A" document="messages/soap11/missingRequestURIFault.html" name="message">
            <assert test="jmsmsg:MessageID = ${response_message_id}"/>
            <assert test="jmsmsg:JMSDeliveryMode = 2"/>
            <assert test="jmsmsg:JMSPriority = 4"/>
            <assert test="jmsmsg:JMSExpiration = 0"/>
            <assert test="jmsmsg:JMSReplyTo = null"/>
            <assert test="jmsmsg:JMSCorrelationID = ${request_message_id}"/>
            <assert test="jmsmsg:JMSDestination = ${jms_response_dest}"/>
            <assert test="jmsmsg:JMSRedelivered = false"/>
            <assert test="jmsmsg:SOAPJMS_contentType = 'text/xml'"/>
            <assert test="jmsmsg:JMSMessageBody = ${soap_response_msg}"/>
            <assert test="jmsmsg:SOAPJMS_isFault = true"/>

         </message>
    </message-exchange>
  </testcase>

  <testcase xml:id="test1107" origin="" cr="REQUIRED" xml:space="preserve">
    <title>SOAP 1.2 two-way request missing request URI</title>
    <description>SOAP 1.2 two-way request message with missing request URI sent to a request queue, and fault message returned to response queue.</description>
    <assertions>
        <assertion id="Protocol-2020"/>
        <assertion id="Protocol-2022"/>
     </assertions>
    <uri>jms:jndi:jms/MyQueue&amp;jndiConnectionFactoryName=jms/MyCF&amp;targetService=EchoPort</uri>
    <message-exchange type="SOAP12-JMS-In-Out-Fault">
        <message from="A" to="B" document="messages/soap12/message0002request.html" name="message">
            <assert test="jmsmsg:MessageID = ${request_message_id}"/>
            <assert test="jmsmsg:JMSDeliveryMode = 2"/>
            <assert test="jmsmsg:JMSPriority = 4"/>
            <assert test="jmsmsg:JMSExpiration = 0"/>
            <assert test="jmsmsg:JMSReplyTo = ${jms_response_dest}"/>
            <assert test="jmsmsg:JMSCorrelationID = null"/>
            <assert test="jmsmsg:JMSDestination = ${jms_request_dest}"/>
            <assert test="jmsmsg:JMSRedelivered = false"/>
            <assert test="jmsmsg:JMSMessageBody = ${soap_request_msg}"/>
           <assert test="jmsmsg:SOAPJMS_bindingVersion = '1.0'"/>
           <assert test="jmsmsg:SOAPJMS_targetService = 'EchoPort'"/>
           <assert test="jmsmsg:SOAPJMS_contentType = 'application/soap+xml'"/>
           <assert test="jmsmsg:SOAPJMS_requestURI = null"/>
           <assert test="jmsmsg:SOAPJMS_soapAction = ''"/>
           <assert test="jmsmsg:MessageType = 'text'"/>

        </message>
        <message from="B" to="A" document="messages/soap12/missingRequestURIFault.html" name="message">
            <assert test="jmsmsg:MessageID = ${response_message_id}"/>
            <assert test="jmsmsg:JMSDeliveryMode = 2"/>
            <assert test="jmsmsg:JMSPriority = 4"/>
            <assert test="jmsmsg:JMSExpiration = 0"/>
            <assert test="jmsmsg:JMSReplyTo = null"/>
            <assert test="jmsmsg:JMSCorrelationID = ${request_message_id}"/>
            <assert test="jmsmsg:JMSDestination = ${jms_response_dest}"/>
            <assert test="jmsmsg:JMSRedelivered = false"/>
            <assert test="jmsmsg:SOAPJMS_contentType = 'application/soap+xml'"/>
            <assert test="jmsmsg:JMSMessageBody = ${soap_response_msg}"/>
            <assert test="jmsmsg:SOAPJMS_isFault = true"/>
         </message>
    </message-exchange>
  </testcase>

  <testcase xml:id="test1008" origin="" cr="REQUIRED" xml:space="preserve">
    <title>SOAP 1.1 two-way request targetService in RequestURI</title>
    <description>SOAP 1.1 two-way request message with targetService in RequestURI sent to a request queue, and fault message returned to response queue.</description>
    <assertions>
        <assertion id="Protocol-2020"/>
        <assertion id="Protocol-2021"/>
        <assertion id="Protocol-2026"/>
     </assertions>
    <uri>jms:jndi:jms/MyQueue&amp;jndiConnectionFactoryName=jms/MyCF&amp;targetService=EchoPort</uri>
    <message-exchange type="SOAP11-JMS-In-Out-Fault">
        <message from="A" to="B" document="messages/soap11/message0002request.html" name="message">
            <assert test="jmsmsg:MessageID = ${request_message_id}"/>
            <assert test="jmsmsg:JMSDeliveryMode = 2"/>
            <assert test="jmsmsg:JMSPriority = 4"/>
            <assert test="jmsmsg:JMSExpiration = 0"/>
            <assert test="jmsmsg:JMSReplyTo = ${jms_response_dest}"/>
            <assert test="jmsmsg:JMSCorrelationID = null"/>
            <assert test="jmsmsg:JMSDestination = ${jms_request_dest}"/>
            <assert test="jmsmsg:JMSRedelivered = false"/>
            <assert test="jmsmsg:JMSMessageBody = ${soap_request_msg}"/>
           <assert test="jmsmsg:SOAPJMS_bindingVersion = '1.0'"/>
           <assert test="jmsmsg:SOAPJMS_targetService = 'EchoPort'"/>
           <assert test="jmsmsg:SOAPJMS_contentType = 'text/xml'"/>
           <assert test="jmsmsg:SOAPJMS_soapAction = ''"/>
           <assert test="jmsmsg:SOAPJMS_requestURI = 'jms:jndi:jms/MyQueue?targetService=EchoPort'"/>
           <assert test="jmsmsg:MessageType = 'text'"/>
        </message>
        <message from="B" to="A" document="messages/soap11/targetServiceNotAllowedInRequestURIFault.html" name="message">
            <assert test="jmsmsg:MessageID = ${response_message_id}"/>
            <assert test="jmsmsg:JMSDeliveryMode = 2"/>
            <assert test="jmsmsg:JMSPriority = 4"/>
            <assert test="jmsmsg:JMSExpiration = 0"/>
            <assert test="jmsmsg:JMSReplyTo = null"/>
            <assert test="jmsmsg:JMSCorrelationID = ${request_message_id}"/>
            <assert test="jmsmsg:JMSDestination = ${jms_response_dest}"/>
            <assert test="jmsmsg:JMSRedelivered = false"/>
            <assert test="jmsmsg:SOAPJMS_contentType = 'text/xml'"/>
            <assert test="jmsmsg:JMSMessageBody = ${soap_response_msg}"/>
            <assert test="jmsmsg:SOAPJMS_isFault = true"/>
         </message>
    </message-exchange>
  </testcase>

  <testcase xml:id="test1108" origin="" cr="REQUIRED" xml:space="preserve">
    <title>SOAP 1.2 two-way request targetService in RequestURI</title>
    <description>SOAP 1.2 two-way request message with targetService in RequestURI sent to a request queue, and fault message returned to response queue.</description>
    <assertions>
        <assertion id="Protocol-2020"/>
        <assertion id="Protocol-2021"/>
        <assertion id="Protocol-2026"/>
     </assertions>
    <uri>jms:jndi:jms/MyQueue&amp;jndiConnectionFactoryName=jms/MyCF&amp;targetService=EchoPort</uri>
    <message-exchange type="SOAP12-JMS-In-Out-Fault">
        <message from="A" to="B" document="messages/soap12/message0002request.html" name="message">
            <assert test="jmsmsg:MessageID = ${request_message_id}"/>
            <assert test="jmsmsg:JMSDeliveryMode = 2"/>
            <assert test="jmsmsg:JMSPriority = 4"/>
            <assert test="jmsmsg:JMSExpiration = 0"/>
            <assert test="jmsmsg:JMSReplyTo = ${jms_response_dest}"/>
            <assert test="jmsmsg:JMSCorrelationID = null"/>
            <assert test="jmsmsg:JMSDestination = ${jms_request_dest}"/>
            <assert test="jmsmsg:JMSRedelivered = false"/>
            <assert test="jmsmsg:JMSMessageBody = ${soap_request_msg}"/>
           <assert test="jmsmsg:SOAPJMS_bindingVersion = '1.0'"/>
           <assert test="jmsmsg:SOAPJMS_targetService = 'EchoPort'"/>
           <assert test="jmsmsg:SOAPJMS_contentType = 'application/soap+xml'"/>
           <assert test="jmsmsg:SOAPJMS_soapAction = ''"/>
           <assert test="jmsmsg:SOAPJMS_requestURI = 'jms:jndi:jms/MyQueue?targetService=EchoPort'"/>
           <assert test="jmsmsg:MessageType = 'text'"/>
        </message>
        <message from="B" to="A" document="messages/soap12/targetServiceNotAllowedInRequestURIFault.html" name="message">
            <assert test="jmsmsg:MessageID = ${response_message_id}"/>
            <assert test="jmsmsg:JMSDeliveryMode = 2"/>
            <assert test="jmsmsg:JMSPriority = 4"/>
            <assert test="jmsmsg:JMSExpiration = 0"/>
            <assert test="jmsmsg:JMSReplyTo = null"/>
            <assert test="jmsmsg:JMSCorrelationID = ${request_message_id}"/>
            <assert test="jmsmsg:JMSDestination = ${jms_response_dest}"/>
            <assert test="jmsmsg:JMSRedelivered = false"/>
            <assert test="jmsmsg:SOAPJMS_contentType = 'application/soap+xml'"/>
            <assert test="jmsmsg:JMSMessageBody = ${soap_response_msg}"/>
            <assert test="jmsmsg:SOAPJMS_isFault = true"/>
         </message>
    </message-exchange>
  </testcase>

  <testcase xml:id="test1009" origin="" cr="REQUIRED" xml:space="preserve">
    <title>SOAP 1.1 two-way request using unspported lookup variant in request URI</title>
    <description>SOAP 1.1 two-way request which specifies a request URI containing an unsupported lookup variant, resulting in a fault.</description>
    <assertions>
        <assertion id="Protocol-2071"/>
     </assertions>
    <uri>jms:XXXX:jms/MyQueue&amp;jndiConnectionFactoryName=jms/MyCF&amp;targetService=EchoPort</uri>
    <message-exchange type="SOAP11-JMS-In-Out-Fault">
    </message-exchange>
    <note>The SOAP sending node should throw a fault back to the caller before the request message is sent to the destination.
    The fault should have a fault subcode of 'unsupportedLookupVariant'.</note>
  </testcase>

  <testcase xml:id="test1109" origin="" cr="REQUIRED" xml:space="preserve">
    <title>SOAP 1.2 two-way request using unspported lookup variant in request URI</title>
    <description>SOAP 1.2 two-way request which specifies a request URI containing an unsupported lookup variant, resulting in a fault.</description>
    <assertions>
        <assertion id="Protocol-2071"/>
     </assertions>
    <uri>jms:XXXX:jms/MyQueue&amp;jndiConnectionFactoryName=jms/MyCF&amp;targetService=EchoPort</uri>
    <message-exchange type="SOAP12-JMS-In-Out-Fault">
     </message-exchange>
    <note>The SOAP sending node should throw a fault back to the caller before any request message is sent to the destination.
    The fault should have a fault subcode of 'unsupportedLookupVariant'.</note>
  </testcase>
</testcases>
