Saturday, July 21, 2012

JBOSS 7 : Remote JMS Topic MDB Consumer

Yesterday I was playing with Jboss 7 JMS stuff. What I needed was to have several servers installation where one server produces messages and others are subscribed to that topic.
Here is what end up with.

JMS Topic Producer Server Configuration


JMS Topic Consumer Server Configuration


JMS Topic Consumer MDB

JMS Message published standalone client


Required jars for running standalone client

        /modules/org/jboss/marshalling/main/jboss-marshalling-1.3.15.GA.jar
        /modules/org/jboss/xnio/main/xnio-api-3.0.5.GA.jar
        /modules/org/jboss/ejb-client/main/jboss-ejb-client-1.0.11.Final.jar
        /modules/org/jboss/remoting3/main/jboss-remoting-3.2.8.GA.jar
        /modules/org/jboss/xnio/nio/main/xnio-nio-3.0.5.GA.jar
        /modules/org/jboss/remote-naming/main/jboss-remote-naming-1.0.4.Final.jar
        /modules/org/jboss/marshalling/river/main/jboss-marshalling-river-1.3.15.GA.jar
        /modules/org/hornetq/main/hornetq-jms-2.2.18.Final.jar
        /modules/org/hornetq/main/hornetq-core-2.2.18.Final.jar
        /modules/org/jboss/netty/main/netty-3.2.6.Final.jar
         /modules/javax/jms/api/main/jboss-jms-api_1.1_spec-1.0.1.Final.jar
        /modules/org/jboss/logging/main/jboss-logging-3.1.1.GA.jar


p.s. Assuming JMS Topic Producer Server has user "admin" with role "admin" and password "admin" in "ApplicationRealm".
This configuration was applied to JBOSS 7.2.0 ALPHA1. It's wasn't working as expected in 7.1.1 Final.

1 comment:

Ravi said...

Hi I want the same stuff,
But when I use user name and password it is working, what I want is I should not use password here instead it should use the connection pool created int the jboss(which mentioned in the standalone file). DO you have any suggestion ?

MyTestConsumer


MyTestConsumer
com.mytest.MyTestConsumerMDB
Bean


jndiParameters
${jndi_parameters}


connectionFactory
MyQueueConnectionFactory


user
${user}


password
${password}



minSession



maxSession
30


destinationType
javax.jms.Queue


destination
MyReceiverQueue.Receive