Saturday, December 19, 2015

Configure Hermes JMS for TIBCO EMS | Test SOAP/JMS Web service using SoapUI/HermesJMS

HermesJMS :

SOAPUI integrates with the HermesJMS open source application which supports many differenet JMS providers.This gives support for JMS messaging allowing you to send and receive both text and binary messages.

Hermes JMS is bundled with the SOAP UI installer, so the simplest way to get it is just to select it for installation when you install.

Configuring HermesJMS for TIBCO EMS:

Step -1 : Once you install, Open the SOAP UI and Navigate to Tools(i.e. top left corner as below) and select HermesJMS then it opens a new window HermesJMS configuration UI.

Step -2 : In Configuration UI, right click on sessions and click on New session then it opens the Preferences window which allows us to configure TIBCO EMS realted jars and connection parameters.

Step -3 : In Preferences window, select Providers tab and right click on free space then press Add Group and enter group name(Example : EMS-Jars). Right click on Library and click on Add JAR(s) then navigate to <TIBC0_HMOE>\ems\6.3\lib folder and select all .jar files. There you will see a pop up window, press scan button then Hermes scans those jars for factories and finally click on Apply. All libraries will be shown as below :

Step -4 : Click on Sessions tab and enter name of the session(Example : EMS) and select loader:EMS-Jars (which is same as group name) and class: com.tibco.tibjms.TibjmsQueueConnectionFactory and then select the Plug In as Tibco EMS and finally add three Property values i.e. serverURL, userName and password for both Plug In and Connection Factory as shown below and click on Apply.

Step -5 : Once all the configuration is done then close Preferences window and right click on Session:EMS and click on Discover then Hermes will connect to EMS and dicover the list of destinations on TIBCO EMS server.

Test SOAP/JMS Web Service using SOAP UI and Hermes JMS:

Step -1 : Open the SOAP UI and create New SOAP Proejct(File --> New SOAP Project) and locate wsdl for SOAP/JMS webservice and then click on OK.

Step -2 : Once open the New SOAP Project, right click on binding and choose Add JMS endpoint then popup dialog will open, there we have to configure Hermes Config path to the folder where hermes-config.xml is(usually .hermes), Session and Send/Publish destination as shown below:

NOTE : You can choose Send/Publish destination only by leaving Receive/Subscribe destination field blank and also Receive/Subscribe destination only by leaving Send/Publish destination field blank.

Step -3 : Open the request and in URL tab, load the new JMS endpoint URL and append "::queue_" value at the end of the URL and copy SoapAction from WSDL and add as JMSProperty as shown below:

Step -4 : Finally send a request and in turn will receive response but make sure that servie is up and running.

Please leave a comment if it really helps you.


  1. Hi In Step 4 i am not getting the connection factory class mentioned is not visible. I chose the newly created Loader. What could be wrong. I am using 8.2 TIBCO and 1.14 Hermes.

    1. Make sure to add all EMS Jars which are mentioned in STEP-3 under Preferences/ClasspathGroups section.

      FYI.. Selected class is part of Tibjms.jar file.


back to top