Integration Server 10.5 | Web Services Developer’s Guide | Using SOAP over JMS with Web Services | Using SOAP/JMS with Consumer Web Service Descriptors | Additional Guidelines for Using SOAP/JMS with Consumer Web Service Descriptors
 
Additional Guidelines for Using SOAP/JMS with Consumer Web Service Descriptors
When using SOAP/JMS with consumer web service descriptors, keep the following information in mind:
*The server parameter watt.server.soapjms.defaultMessageType specifies the default message type for web service request messages sent using SOAP over JMS. This parameter can be set to BytesMessage or TextMessage. The default value is BytesMessage. The default message type can be overwritten during web service connector execution by setting the jms.messageType property in the transportHeaders input parameter.
*The client side queue can be used with web service connectors for In-Only operations and In-Out operations only. Do not use the client side queue with Robust-In-Only operations.
Note:
If you want to use the client side queue with an In-Out operation, you must send the request message asynchronously. For more information about sending an asynchronous request message for an In-Out operation, see Asynchronously Invoking an In-Out Operation.
*The client side queue can be used with a web service descriptor only if the consumer web service endpoint alias uses a JMS connection alias to connect to a JMS provider.
*To receive a response for a synchronous In-Out operation, Integration Server creates a message consumer for the replyTo destination immediately after sending the JMS message request to the JMS provider.
*Integration Server provides partial support for using Robust-In-Only operations with SOAP/JMS bindings. For more information, see Consumer Support for Robust In-Only Operations with SOAP/JMS Bindings.
*A web service connector that sends a JMS message can throw an ISRuntimeException. However, Integration Server places the ISRuntimeException in the fault document returned by the connector. If you want the parent flow service to catch the transient error and rethrow it as an ISRuntimeException, you must code the parent flow service to check the fault document for an ISRuntimeException and then throw the ISRuntimeException explicitly.
*Integration Server has additional guidelines for using transactions with SOAP/JMS bindings. For more information about using transactions with web service descriptors and SOAP/JMS, see Using SOAP/JMS with Web Services with Transactions.