Skip to content
Switch branches/tags
Go to file

Latest commit


Git stats


Failed to load latest commit information.
Latest commit message
Commit time


WSO2 ESB Message Store and Message Processor implementation for RabbitMQ

This Message Store and Message Processor (MS&MP) implements the way how to WSO2 ESB and RabbitMQ (or any Message Broker) should work. With this MS&MP we can implement different EIP related to messaging such as:

  • Dead Letter Queue
  • Wire Tap
  • Retry Queue
  • Throttling

For further information about EIP, I recommend the next pages:

This is valid for:

  • WSO2 ESB 4.8.1
  • RabbitMQ 3.4.4
  • Apache Qpid client 0.30

How to check the sourcecode and configuration

Follow the next commands:

$ mkdir wso2esb-rabbitmq-message-store
$ cd wso2esb-rabbitmq-message-store
$ git pull
$ mvn clean install
$ mvn exec:java -Dexec.mainClass="com.chakray.chilcano.wso2.rabbitmq.sample.HelloRabbitMQ"

The com.chakray.chilcano.wso2.rabbitmq.sample.HelloRabbitMQ is a simple JMS client that publish and consume a message to/from RabbitMQ. This sample uses Apache Qpid client library, does not use RabbitMQ client libraries. To execute properly you should update the with your values.

How to deploy on WSO2 ESB

Deploy the libraries:

  1. Copy, qpid-client-0.30.jar, qpid-common-0.30.jar, wso2esb-rabbitmq-msmp-0.1.jar to %WSO2ESB_HOME%/repository/components/lib/ folder.
  2. Restart WSO2 ESB

Deploy the Synapse files for the Message Store and API samples:

  1. In RabbitMQ side you need to create a queue and 2 routing keys. I recommend you use the hello_rabbitmq_config_broker.json and import it from the RabbitMQ web admin console.
  2. Copy HelloRabbitMQMsgStore1.xml into %WSO2ESB_HOME%/repository/deployment/server/synapse-configs/default/message-stores/
  3. Copy HelloRabbitMQRest1.xml into %WSO2ESB_HOME%/repository/deployment/server/synapse-configs/default/api/

WSO2 ESB automatically will deploy these 2 synapse files and after that you are ready to send a message to WSO2 ESB and store this message in RabbitMQ side.



No description, website, or topics provided.



No releases published


No packages published