Skip to main content
Version: 2.18.x.x LTS

JmsEventSource

The JmsEventSource is used to fire an event when a message is received through the configured JMS queue or topic. The message has to be of MapMessage type and the data contained in it is made available through the runtime configuration repository. The detailed settings depend on the JMS implementation and the container.

The nevisDataPorter starts even if the JMS service is not available. In this case, or if the connection is lost, it tries to reconnect to the JMS service periodically. The period can be set in the configuration.

Configuration

NameType, usage constraints, defaultsDescription
destinationrequired: paraVal
default: none
type: JNDI name of the destination
The JNDI name used to obtain the destination.
jndiPropertiesrequired: paraMap
default: none
type: string/string map
A map containing the Java properties to set up JNDI.
reconnectTimeIntervaloptional: paraVal
default: 60000
type: long
The period of the JMS service reconnection. It has to be set in milliseconds. Optional. The default value is 1 minute.
connectionFactoryNameoptional: paraVal
default: ConnectionFactory
type: JNDI name
The JNDI name of the connection factory.
listenersoptional: paraVal
default: 10
type: integer
The number of parallel message listeners that are used. The number corresponds to the number of parallel DataPorter instances that are available for the processing of JMS messages. For JMS topics, the number of listeners should be 1. Otherwise, messages are received multiple times.
usernameoptional: paraVal
default: none
type: string
The selected user name for authentication with the JMS server. Must be used together with password.
passwordoptional: paraVal
default: none
type: string
sensitive: true
The password used for authentication with the JMS server. Must be used together with username.

Example

A nevisIDM provisioning queue running in an AdnJboss container.

<eventSource name="nevisidmEvents" type="JmsEventSource">
<dp:paraVal name="destination" value="queue/Provisioning" />
<dp:paraVal name="reconnectTimeInterval" value="20000" />
<dp:paraMap name="jndiProperties">
<value name="java.naming.provider.url" value="jnp://localhost:10000" />
<value name="java.naming.factory.url.pkgs" value="org.jboss.naming.client"/>
<value name="java.naming.factory.initial" value="org.jnp.interfaces.NamingContextFactory"/>
</dp:paraMap>
</eventSource>