Absent Member.. Absent Member..
Absent Member..

EMS 8.0 | jms_publish_message_topic

Hi Friends,

Has anyone tried to send a message using "jms_publish_message_topic"  command for EMS 8.0?


I am getting an error and a little net research says we need to add 2 call paths >tibjms.jar and >jms-2.0.jar.

I do not know how to add 2 jar files to the class path, and when i try with just > tibjms.jar in the class path, I get the below error.

Any help would be great.



Starting action Action.
Action.c(13): JMS call "publish_step" started
Action.c(13): jms_print_general_property - JVM_Path = C:\Program Files (x86)\Java\jre7\bin\jre\
Action.c(13): jms_print_general_property - JMS_impl_classpath = F:\VugenScripts\Gems\tibjms.jar
Action.c(13): jms_set_general_property called - JNDI_InitialContextFactory = com.tibco.tibjms.naming.TibjmsInitialContextFactory
Action.c(13): jms_set_general_property called - JNDI_provider_URL = tcp://localhost:7222
Action.c(13): jms_set_general_property called - ConnectionFactory = TopicConnectionFactory
Action.c(13): jms_set_general_property called - connections_per_process = 1
Action.c(13): jms_set_general_property called - msg_timeout = 1
Action.c(13): jms_set_general_property called - user_define_timeout = 20
Action.c(13): jms_set_general_property called - SecurityPrincipal = admin
Action.c(13): jms_set_general_property called - SecurityCredentials =
Action.c(13): jms_set_general_property called - SetCorbaOrb =
Action.c(13): jms_set_general_property called - auto_generate_selector = 0
Action.c(13): jms_set_general_property called - EnableTibcoSslJndiLookup =
Action.c(13): java.naming.provider.url = tcp://localhost:7222
Action.c(13): java.naming.factory.initial = com.tibco.tibjms.naming.TibjmsInitialContextFactory
Action.c(13): java.naming.security.principal=admin
Action.c(13): Error:Failed to publish message message to publish on test.topic due to the following exception : java.lang.NoClassDefFoundError: javax/jms/JMSContext
java.lang.NoClassDefFoundError: javax/jms/JMSContext
    at com.tibco.tibjms.naming.TibjmsContext$Messenger.<init>(TibjmsContext.java:316)
    at com.tibco.tibjms.naming.TibjmsContext.lookup(TibjmsContext.java:651)
    at com.tibco.tibjms.naming.TibjmsContext.lookup(TibjmsContext.java:491)
    at javax.naming.InitialContext.lookup(InitialContext.java:411)
    at com.mercury.ws.jms.ConnectionManagerImpl.initialize(ConnectionManagerImpl.java:99)
    at com.mercury.ws.jms.JMSSupportImpl.initialize(JMSSupportImpl.java:28)
    at com.mercury.ws.jms.JMSBridge.init_jms(JMSBridge.java:154)
Caused by: java.lang.ClassNotFoundException: javax.jms.JMSContext
    at java.net.URLClassLoader$1.run(URLClassLoader.java:366)
    at java.net.URLClassLoader$1.run(URLClassLoader.java:355)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.net.URLClassLoader.findClass(URLClassLoader.java:354)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:423)
    at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:356)
    ... 7 more
Action.c(13): Error:JMS call execution failed


1 Reply
Absent Member.
Absent Member.



You can try copy all necessary jar files to "lib\ext" folder of JVM_path. You can get JVM_path from Output log, it is similar to:

Action.c(13): jms_print_general_property - JVM_Path = C:\Program Files (x86)\Java\jre7\bin\jre\

So in this case, you copy "tibjms.jar" and "jms-2.0.jar" to "C:\Program Files (x86)\Java\jre7\bin\jre\lib\ext\" folder then try replaying.


Hope it helps.





Edit: I updated the JVM_Path base on your post.

The opinions expressed above are the personal opinions of the authors, not of Micro Focus. By using this site, you accept the Terms of Use and Rules of Participation. Certain versions of content ("Material") accessible here may contain branding from Hewlett-Packard Company (now HP Inc.) and Hewlett Packard Enterprise Company. As of September 1, 2017, the Material is now offered by Micro Focus, a separately owned and operated company. Any reference to the HP and Hewlett Packard Enterprise/HPE marks is historical in nature, and the HP and Hewlett Packard Enterprise/HPE marks are the property of their respective owners.