Element name Attribute name Required Default Value Mnemonic Comments

EsbListenerController root node (1)

There must always be a root node even if

none of it's attributes are set


command-queue-class n null (no command queue)
Use 'org.jboss.soa.internal.soa.esb.command..JmsCommandQueue' if

you wish to send runtime asynchronous commands to your listener

controller, via a JMS queue

commandConnFactoryClass n ConnectionFactory JmsCommandQueue.COMMAND_CONN_FACTORY

commandJndiType n jboss JmsCommandQueue.COMMAND_JNDI_TYPE

commandJndiURL n localhost JmsCommandQueue.COMMAND_JNDI_URL

commandIsTopic n false JmsCommandQueue.COMMAND_IS_TOPIC

commandJndiName n null JmsCommandQueue.COMMAND_JNDI_NAME

messageSelector n null JmsCommandQueue.COMMAND_MSG_SELECTOR

If no command queue is specified, maximum run time and frequency of

parameter reloading, can be specified using the following two attributes

parameterReloadSecs n 180 seconds EsbListenerController.PARM_RELOAD_SECS

endTime n for ever EsbListenerController.PARM_END_TIME yyyyMMdd hh:mm:ss

Email configuration child element (0,1)


If present, must be an immediate child of the root node

org.jboss.soa.esb.mail.smtp.host n localhost Environment.SMTP_HOST

org.jboss.soa.esb.mail.smtp.user n null Environment.SMTP_USERNAME

org.jboss.soa.esb.mail.smtp.password n null Environment.SMTP_PASSWORD

org.jboss.soa.esb.mail.smtp.port n 25 Environment.SMTP_PORT

org.jboss.soa.esb.mail.smtp.from n null Environment.SMTP_FROM

org.jboss.soa.esb.mail.smtp.auth n false Environment.SMTP_AUTH

Controlled ESB aware listener classes (1,*)

any (except EmailProperties)

All ESB aware listener classes must contain (1,n) <action> child elements


class y

process n process ListenerTagNames.PROCESS_METHOD_TAG a single method name, or a comma delimited list of method names

signature for all of them must be: Message myMethod (Mesage)

okMethod n null ListenerTagNames.NORMAL_COMPLETION_METHOD_TAG No method will be invoked on successful outcome if this attribute is not present

exceptionMethod n null ListenerTagNames.EXCEPTION_METHOD_TAG No method will be invoked when exceptions are thrown, if this attribute is not present

Users must specify one or more <action> elements

Action classes must have a constructor taking a single ConfigTree argument

Default name for 'message processing' method specified by process tag name is (also) 'process'

User can (optionally) supply method names for callback functions that can be called for 'normal completion' of step, or 'exception thrown'

If an exception is thrown at any point, the action processing pipeline aborts, logs the Exception, and invokes the 'exceptionMethod' if one was defined

If user supplied action class needs more run time configuration attributes and/or elements, these

must belong inside the action element (enclosed within the <action> </action> pair)

Action classes receive their own Element at constructor time, naturally including all child elements

JmsQueueListener configuration (ESB aware)

listenerClass y
EsbListenerController.PARM_LISTENER_CLASS In this case, it's org.jboss.soa.esb.listener.message.JmsQueueListener

service-category y
ListenerTagNames.TARGET_SERVICE_CATEGORY_TAG Will register as servicing the JMS EPR, under this service-category

service-name y
ListenerTagNames.TARGET_SERVICE_NAME_TAG and service-name

The following tags will be used to determine (and build) te EPR this listener will be picking up Messages from

connection-factory n ConnectionFactory JMSEpr.CONNECTION_FACTORY_TAG

jndi-type n jboss JMSEpr.JNDI_TYPE_TAG

jndi-URL n localhost JMSEpr.JNDI_URL_TAG

destination-name y

message-selector n null JMSEpr.MESSAGE_SELECTOR_TAG

What will actually happen with the incoming messages will be the result of what the chaining of all 'process' methods does with them

CbrJmsQueueListener configuration (for further info, please see the 'Content Based Routing' document)

This class extends JmsQueueListener, so service and EPR configuration is the same as the JmsQueueListener

It does however need a specific child element that is described below


ruleSet y

ruleLanguage n