com.atlassian.confluence.content.render.xhtml.migration.exceptions.UnknownMacroMigrationException: The macro 'next_previous_links' is unknown.

ActiveMQ Event Receiver

ActiveMQ JMS event receiver is an internal event receiver that comes with WSO2 products by default. You can configure it with XML, map, JSON, and text input mapping types.

Prerequisites

Follow the steps below to set up the prerequisites before starting the configuration.

  1. Install Apache ActiveMQ JMS. 

    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.

  2. Add the following ActiveMQ JMS-specific JAR files to  <DAS_HOME>/repository/components/lib/ directory. 
    • <ACTIVEMQ_HOME>/lib/activemq-core-xxx.jar  
    • <ACTIVEMQ_HOME>/lib/geronimo-j2ee-management_1.1_spec-1.0.1.jar
  3. Start the ActiveMQ JMS server.

Creating an ActiveMQ  JMS  event receiver 

For instructions on creating an ActiveMQ JMS event receiver, see Configuring Event Receivers

Configuring adapter properties

Specify the Adapter Properties , when creating an ActiveMQ JMS  event receiver using the management console as shown below.


After entering the above adapter properties, select the  Event Stream  to which you want to map the incoming events, and the  Message Format   which you want to apply on the receiving events . Also, click  Advanced  to define custom input mappings based on the  Message Format  you selected. For more information on custom input mapping types, see  Input Mapping Types .

You can also define the respective adapter properties of the event receiver based on the transport type within the  <from>  element of the event receiver configuration in the <PRODUCT_HOME>/repository/deployment/server/eventreceivers/ directory as follows.

<eventReceiver name="ActiveMQJMSInputEventAdapter" statistics="disable"
    trace="disable" xmlns="http://wso2.org/carbon/eventreceiver">
    <from eventAdapterType="jms">
        <property name="java.naming.factory.initial">org.apache.activemq.jndi.ActiveMQInitialContextFactory</property>
        <property name="java.naming.provider.url">tcp://localhost:61616</property>
        <property name="transport.jms.DestinationType">topic</property>
        <property name="transport.jms.SubscriptionDurable">true</property>
        <property name="transport.jms.Destination">Test Topic</property>
        <property name="transport.jms.DurableSubscriberClientID">wso2dasclient1</property>
        <property name="transport.jms.ConnectionFactoryJNDIName">TopicConnectionFactory</property>
    </from>
    ......................
</eventReceiver>

The above adapter properties are described below.

Adapter PropertyDescriptionConfiguration file propertyExample

Topic/Queue Name

A string of characters to denote a valid name of a JMS topic to subscribe to, or named queue to use when WSO2 CEP/DAS sends and receives messages.

transport.jms.Destination
Test Topic

JNDI Initial Context Factory Class

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

The JMS connection password

A valid password for the JMS connection.

transport.jms.Password
jms-password

The JMS connection username

A valid username for the JMS connection.

transport.jms.UserName
jms-user

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

Enable Durable Subscription

Whether the subscription is durable or not.

transport.jms.SubscriptionDurable
true/false

Durable Subscriber Name

A string of characters to denote a valid id for client connecting as the durable subscriber. (It will enable durable subscription if you add any value here).

transport.jms.DurableSubscriberClientID
subscriber

JMS Properties

Valid property and value pairs to denote Axis2 JMS properties (e.g. "property1: value1, property2: value2")

For more information on Axis2 JMS properties, go to Apache AXIS2 Transports Documentation.

jms.properties
SessionTransacted:false

Related samples

For more information on ActiveMQ event receiver type, see the following samples in WSO2 CEP Documentation.

com.atlassian.confluence.content.render.xhtml.migration.exceptions.UnknownMacroMigrationException: The macro 'next_previous_links2' is unknown.