The synchronous MQSeries® and Oracle WebLogic transport nodes allow request and response operations using JMS queues and topics. If the response is not received within a defined period, an exception is thrown.
Identification of appropriate response messages is done with a header field named MESSAGEID. When the request message is put into the queue or topic, the MESSAGEID header is set to a unique value based on the current time and a counter. The response headers must have this same message ID for it to be picked up and processed correctly.
2002.02.25 09:25:53 MQJMS2002E failed to get message from MQ queue
LDR_CNTRL=MAXDATA=0x30000000
export LDR_CNTRL
The following are the properties of this node:
Property | Description |
---|---|
Runtime Tab | |
Provider URL | Enter the provider URL of the JMS implementation used. This
is the URL to use for JNDI lookups.
For clustered JMS configurations, use a comma-separated value comprising the host/IP and port of each node in the cluster. For example:
|
Initial Context Factory | The class name of the initial context factory. This is the
starting point for the resolution of names for naming and directory
operations. Select WebSphere MQ if you are using MQSeries accessed through an IBM WebSphere IIOP
URL. This sets the class name to com.ibm.websphere.naming. Select File
if you are using MQSeries accessed
through a file URL, as with Oracle WebLogic. This sets the class name
to com.sun.jndi.fscontext. Select WebLogic if you are using Oracle WebLogic JMS.
This sets the class name to weblogic.jndi. |
Connection Factory | Enter the connection factory name. This is used to retrieve the connection factory from JNDI. A client uses a connection factory to create connections with a JMS provider. Enter any unique identifier for the connection factory. This name must be the same as that configured in the Oracle WebLogic console or MQSeries. |
Needs Compression | Select this option if the message needs to be compressed. |
Enable JMS Security | Check this box if you want JMS Security to be enabled. Once
selected, the JMS Security Properties tab is enabled to configure
destination and/or JNDI based JMS security. Note: Oracle
WebLogic 12.1.2 only supports JNDI based JMS security. If destination
based security is enabled, it is altogether bypassed. Therefore, you
must configure JNDI based JMS security if using Oracle WebLogic 12.1.2.
Note: If JMS security is enabled, the JMS session pooling
should be disabled. You can disable JMS session pooling by setting
the yfs.jms.session.disable.pooling property to 'Y' in the <INSTALL_DIR>/properties/customer_overrides.properties file.
|
Response Tab | |
Destination Name | Enter the name of the queue or topic in which the response message is received. |
Selector | Enter selectors based on the message headers. When specifying a selector, use only single quotes. For example, specifying the selector APINAME='createOrder' selects all messages with a header name='APINAME' and value='createOrder'. |
Time Out (seconds) | Enter the time interval (in seconds) after which the requests time out. |
Request Tab | |
Destination Name | Enter the name of the queue or topic to which the request message is sent. |
Header Name | The name of the message header. For example, APINAME. Note: The header name must be unique. Two headers cannot have
the same header name.
Choose the Create New icon to add a new header name and value. Choose the Details icon to modify an existing header name and value. Choose the Delete icon to delete an existing header name and value. |
Header Value | The value associated with the Header Name. These name-value
pairs are stored as message headers and can be queried by using message
selectors. This can be set to a static value. For example, ‘createOrder' results in the message having a header APINAME=createOrder'. It can also be set to be dynamically extracted from the message using the syntax xml://<full path of the element from root>/@<attribute name>, which results in the message with a header APINAME='<value of attribute name in the XML>'. |
Reconnect Tab | |
Retry Interval (milliseconds) | In the event that the connection to the JMS server has been lost, enter the amount of time between each attempt to re-establish contact with the JMS server. This parameter is used in conjunction with the Number of Retries parameter. The default value is 0, implying no delay time between retry attempts. |
Number of Retries | In the event that the connection to the JMS server has been lost, enter the number of attempts to re-establish contact with the JMS server before throwing an exception. This parameter is used in conjunction with the Retry Interval parameter. The default value is 0, implying no retries if the connection is lost and an exception is thrown immediately. |
JMS Security Properties Tab This is enabled upon selecting Enable JMS Security in the runtime properties tab. Note: You can override
the JMS security properties specified here by defining the agent and
flow authorization parameters in the <INSTALL_DIR>/properties/customer_overrides.properties file.
|
|
Destination based security | Check this box if you want to provide destination based security
for JMS service. Note: Oracle WebLogic 12.1.2 only supports
JNDI based JMS security. If destination based security is enabled,
it is altogether bypassed. Therefore, you must configure JNDI based
JMS security if using Oracle WebLogic 12.1.2.
|
JNDI based security | Check this box if you want to provide JNDI based security for JMS service. |
JMS Security Parameters For more information about application server-specific JMS security parameters, see "Setting up the JMS Security Properties" section. |
|
Parameter Name | Enter the name of the Oracle security parameter. |
Parameter Value | Enter the value of the security parameter. |
The following are the synchronous Oracle WebLogic and MQSeries nodes' connection properties:
Connection | Node Connection Rules |
---|---|
Can be the first node after the start node | Only for services invoked synchronously. |
Can be placed before |
|
Can be placed after |
|
Passes data unchanged | Transport nodes do not modify data. |