ActiveMQ JMS event publisher is used to publish events in map, XML, JSON, and text formats via JMS transport.
...
Install Apache ActiveMQ JMS.
Info This guide uses ActiveMQ versions 5.7.0 or below. If you want to use a later version, for instructions on the necessary changes to the configuration steps, go to Apache ActiveMQ Documentation.
Configure WSO2 CEP by adding relevant libraries to support JMS transport.
Refer the
<PRODUCT_HOME>/repository/conf/jndi.properties
file to register a connection factory. For example, if the connection factory JNDI name isTopicConnectionFactory
, it will point the default ActiveMQ host to localhost and port to 5672 as shown below. Furthermore, add the topics to be sent to the ActiveMQ broker in the format: topic.{topicName} = {topicName}Code Block language text connectionfactory.TopicConnectionFactory=amqp://admin:admin@clientid/test?brokerlist='tcp://localhost:5672' topic.topicMap = topicMap topic.topicText = topicText
Start ActiveMQ, and then start the product.
...
Adapter Property | Description | Configuration file property | Example |
---|---|---|---|
JNDI Initial Context Factory Class | The JNDI initial context factory class. The class must implement the java.naming.spi.InitialContextFactory interface | java.naming.factory.initial | org.apache.activemq.jndi.ActiveMQInitialContextFactory |
JNDI Provider URL | URL of the JNDI provider | java.naming.provider.url | tcp://localhost:61616 |
Username | Valid username for the JMS connection | transport.jms.UserName | jms-user |
Password | Valid password for the JMS connection | transport.jms.Password | jms-password |
Connection Factory JNDI Name | The JNDI name of the connection factory | transport.jms.ConnectionFactoryJNDIName | TopicConnectionFactory |
Destination Type | The sort order for messages that arrive on a specific destination | transport.jms.DestinationType | topic/queue |
Destination | The topic or queue to which WSO2 CEP sends messages by publishing. | transport.jms.Destination | topicMap |
Concurrent Publishers | If concurrent publishers are allowed to publish events to a JMS broker using multiple threads. | transport.jms.ConcurrentPublishers | allow |
...
Adapter Property | Description | Configuration file property | Example |
---|---|---|---|
Header | Define Transport Headers as a valid header name in a header value pair format | transport.jms.Header | header_name1:header_value1,header_name2:header_value2 |