Friday, March 13, 2009

Setup JMeter JMS Publisher Sampler

Even though there are documentations on how to setup and use JMeter JMS publisher sampler, it seems all of them are either inaccurate or out of date. After pulling my hair for almost two hours, I finally made it work. To avoid headache for anybody who want to set up JMeter JMS publisher sampler, I recorded the procedure as following.

We choose ActiveMQ as our JMS provider.
  1. Copy activemq-core-5.2.0.jar, jms-1.1.jar, and geronimo-j2ee-management_1.0_spec-1.0.jar into JMeter's lib directory.
  2. Create a file and jar it into a jar file, put the jar file into JMeter's lib directory.
  3. Confiture the JMS publisher sampler with the following settings in the JMeter GUI.
  • Check use
  • Connection Factory: ConnectionFactory
  • Topic: MyTopic
  • Number of messages to aggregate: 1
Here is the content of the file:

There are a few catches during the setting up process:
* The ActiveMQInitialContextFactory package name must have the apache.
* ConnectionFactory can not contain any trailing space.
* The Topic JNDI name must be prefixed with topic in the jndi file.
* You must put in the Number Of messages to aggregate, otherwise there will be no messages published.


This comment has been removed by the author.

This blog has ended my long day of misery. Thanks for you.

Gokul said...

Wow!! I tried out multiple alternatives, but this worked out straight away. Thanks.

DavoshBlog said...

Thanks, that's a nice hint to put in a .jar file :))

Shridevi said...

thanks a lot... i have been spending painstaking hours to get this work.

Margus said...

How I should exactly jar into .jar file? If You don't mind. Thanks!

johnlindwall said...

THANK YOU! You have saved my sanity. I don't think I ever would have guessed that the file needed to be packaged in a jar file, and not simply dropped in the lib dir. I Was about to debug into jmeter code or jump out the window. Very helpful!

Previous commenter -- Create a jar file as follows:

jar cvf my-jndi-properties.jar