Oracle WebLogic and MQSeries JMS Topic receiver
The JMS receiver does not have a backup topic, therefore two different services must be configured. One to listen on the primary topic and one to listen on the backup topic. When an exception occurs, the receiver retries using an exponential back off mechanism with a configurable maximum wait limit between retries.
For example, if 600 seconds is the maximum wait time, it first waits for 1 second, then 2 seconds, 4, 8, 16 and so on exponentially until it reaches 600 seconds, after which it retries every 600 seconds. So there is no bound on the total wait time.
Since the JMS receivers operate independently of each other with respect to the primary and backup topics, the order of messages across these topics is not supported.
Configuration properties
The following are the configuration properties of this node:
Property | Description |
---|---|
Runtime Tab | |
Sub Service Name | Enter a unique identifier for each asynchronous receiver within a service definition. |
Topic Name | Enter the name of the topic to which the message is sent. |
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 a IBM
WebSphere IIOP URL. This sets the class name to
Select File if you are using MQSeries
accessed through a file URL, as with Oracle WebLogic. This sets the class name to
Select Oracle WebLogic if you are using Oracle WebLogic JMS. This sets the class
name to |
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. |
Receiving Mode | Indicates whether the messages are received in a transactional mode or non-transactional
mode.
Note: If the IsReprocessible flag is checked and an exception occurs when
processing the message, then before deleting these messages, ensure that they are added to the
YFS_REPROCESS_ERROR or YFS_INBOX table. However, if the "service suspend" exception occurs when
adding these deleted messages to a table, the messages are maintained in the topic.
|
Initial Threads | The thread count on a receiver controls the number of simultaneous consumers that exist for
the given destination. A message to a topic is broadcast to all consumers. Therefore, if the thread
count is 4, the same message is processed 4 times. To distribute workload, use a single thread on
the topic receiver, and put each received message into a queue. The queue can have multiple
consumers, because a message on a queue is delivered to only one consumer. The Initial Threads is defaulted to 1. |
Selector | Enter selectors based on the message headers. These selectors must be in the form Header Name='Header Value'. When specifying a selector, use only single quotes. For example, using the selector APINAME='createOrder' selects all messages with a header name='APINAME' and value='createOrder'. |
Service to Execute on EOF Message | Required if the message contains an EOF message ID. Choose the
Details icon to select the service to be invoked when an EOF message is received. Once the
EOF message is received, the framework waits for a few minutes (configurable in the
|
Root Node Name of EOF Message | If the message contains an EOF message ID, enter your custom root node name for the EOF
message. By default the end of file message has a root node of
" |
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.2.1.3 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.2.1.3.
|
Create Durable Subscription | Check this box if you want the subscriber to be durable. A durable subscriber receives every message delivered to the topic whether the subscriber is running or not. |
Server Tab | |
Server Name | Select the name of the server which actually executes the service. For more information about creating a new server, see "Adding a New Server". |
Needs Decompression | Select this field to indicate that the incoming message is compressed and needs to be decompressed. |
Exception Tabs | See Table 1 for the receiver link exception handling properties. |
Reconnect Tab | |
Maximum Time Between Retries (minutes) | Enter the maximum time between reconnection attempts. The default value is 10 minutes. |
JMS Security Properties Tab
This is enabled upon selecting Enable JMS Security in the runtime 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.2.1.3 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.2.1.3.
|
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 security parameter. |
Parameter Value | Enter the value of the security parameter. |
Connection properties
The following are the WLJMS and MQJMS nodes' connection properties:
Connection | Node Connection Rules |
---|---|
Can be the first node after the start node | Yes, for services invoked both in a synchronous or asynchronous mode. |
Can be placed before |
|
Can be placed after |
|
Passes data unchanged | Transport nodes do not modify data. |