Description:

This ControllerService serves as a general factory service to serving vendor specific instances of the javax.jms.ConnectionFactory. It does so by allowing user to configure vendor specific properties as well as point to the location of the vendor provided JMS client libraries so the correct implementation of the javax.jms.ConnectionFactory can be found, loaded, instantiated and served to the dependent Processors (see PublishJMS, ConsumeJMS).

To accommodate variety of JMS vendors and their implementation of the ConnectionFactory this ControllerService exposes only 3 static configuration properties that are common across many implementations of the ConnectionFactory. The rest of the configuration properties are set following Java Beans convention (see below).

The 3 static configuration properties are:

The rest of the properties are set as Dynamic Properties following Java Beans convention where a property name is derived from the set* method of the vendor specific ConnectionFactory's implementation. For example, com.ibm.mq.jms.MQConnectionFactory.setChannel(String) would imply 'channel' property and com.ibm.mq.jms.MQConnectionFactory.setTransportType(int) would imply 'transportType' property. For the list of available properties please consult vendor provided documentation. Here is an example for IBM's com.ibm.mq.jms.MQConnectionFactory