You must use WSDL to configure SOAP nodes. When using WSDL with a JMS transport, different URI formats can exist in the address element in the WSDL, which affect how properties are parsed and applied to the configured nodes.
Two different URI formats can exist in the WSDL address element. Several node properties are initially set from properties in the imported WSDL, which is parsed according to which type of URI is found in the WSDL element. The first type is the W3C SOAP JMS specification format. For example:
<soap:address location="jms:jndi:REPLYTOQ2?jndiConnectionFactoryName=QCF&
jndiInitialContextFactory=com.sun.jndi.fscontext.RefFSContextFactory&
jndiURL=file:/C:/mqsi6/webservices/SOAP/JMS/JNDI&
targetService=SOAPJMSGenMessageSetSOAP_JMS_Service&
timeToLive=30000"
/>
The second URI format for the address element is a proprietary IBM® format which is currently deprecated. For example:
<soap:address location="jms:/queue?destination=jms/RequestQ&
connectionFactory=jms/WMBQCF&
targetService=SOAPJMSGenMessageSetSOAP_JMS_Service&
initialContextFactory=com.sun.jndi.fscontext.RefFSContextFactory&
jndiProviderURL=file:/C:/mqsi6/webservices/SOAP/JMS/JNDI"
/>
There are several differences between these URI formats. IBM Integration Bus accepts both URI formats. Different WSDL properties are used to set the SOAP node properties depending on which URI format is used in the WSDL address element.
SOAPInput node property name | W3C SOAP/JMS specification names | W3C names in URI | W3C allowed values | IBM names in URI | IBM allowed values |
---|---|---|---|---|---|
Source | soapjms:destinationName | jms-dest (in URI) | <string> | destination | <string> |
Connection factory name | soapjms:jndiConnectionFactoryName | jndiConnectionFactoryName | <string> | connectionFactory | <string> |
Initial context factory | soapjms:jndiInitialContextFactory | jndiInitialContextFactory | <string> | initialContextFactory | <string> |
JNDI URL bindings location | soapjms:jndiURL | jndiURL | <URL> | jndiProviderURL | <URL> |
JNDI parameters | soapjms:jndiContextParameter | jndi-name=value | <string for name and value> | N/A | <string> |
Delivery mode | soapjms:deliveryMode | deliveryMode | NON_PERSISTENT PERSISTENT1 |
deliveryMode persistence |
<int 1 | 2> |
Message priority | soapjms:priority | priority | <int 0-9> | priority Priority |
<int 0-9> |
Target service | soapjms:targetService | targetService | <string> | targetService | <string> |
SOAPRequest or SOAPAsyncRequest node property name | W3C SOAP/JMS specification names | W3C names in URI | W3C allowed values | IBM names in URI | IBM allowed values |
---|---|---|---|---|---|
Destination | soapjms:destinationName | jms-dest (in URI) | <string> | destination | <string> |
Connection factory name | soapjms:jndiConnectionFactoryName | jndiConnectionFactoryName | <string> | connectionFactory | <string> |
Initial context factory | soapjms:jndiInitialContextFactory | jndiInitialContextFactory | <string> | initialContextFactory | <string> |
JNDI URL bindings location | soapjms:jndiURL | jndiURL | <URL> | jndiProviderURL | <URL> |
JNDI parameters | soapjms:jndiContextParameter | jndi-name=value | <string for name and value> | N/A | <string> |
Delivery mode | soapjms:deliveryMode | deliveryMode | NON_PERSISTENT PERSISTENT1 |
deliveryMode persistence |
<int 1 | 2> |
Message expiration | soapjms:timeToLive | timeToLive | <int> | timeToLive | <int> |
Message priority | soapjms:priority | priority | <int 0-9> | priority Priority |
<int 0-9> |
Reply to destination | soapjms:replyToName | replyToName | <string> | replyToName replyTo replyToDestination replyDestination |
<string> |
Target service | soapjms:targetService | targetService | <string> | targetService | <string> |
User parameters | UserProperties | <any other property name> | <string> | <any other property name> | <string> |