Tibco error: ClassNotFoundException: com.tibco.tibjms.naming.TibjmsInitialContextFactory
29,954
This is clearly a classpath error. Are you running both on your local machine?
If the second one is being run on a server somewhere, ensure the EMS jar libraries are referenced in the classpath. I believe the one you're after is tibjms.jar
.
How you reference the jar file is dependent on your environment and technologies.
Author by
shashikanthb
Updated on June 15, 2020Comments
-
shashikanthb about 4 years
I am facing this issue. I tested tibco with below configuration(local tibco) and it works
<jee:jndi-lookup id="connectionFactory" jndi-name="emsConnectionFactory"> <jee:environment> java.naming.factory.initial=com.tibco.tibjms.naming.TibjmsInitialContextFactory java.naming.provider.url=tibjmsnaming://localhost:7222 </jee:environment> </jee:jndi-lookup> <jee:jndi-lookup id="queue" jndi-name="emsQueue"> <jee:environment> java.naming.factory.initial=com.tibco.tibjms.naming.TibjmsInitialContextFactory java.naming.provider.url=tibjmsnaming://localhost:7222 </jee:environment>
But when i try to connect to the central tibco(only the provider changed) with below configuration i get classNotFound error
<jee:jndi-lookup id="connectionFactory" jndi-name="XAQueueConnectionFactory"> <jee:environment> java.naming.factory.initial=com.tibco.tibjms.naming.TibjmsInitialContextFactory java.naming.provider.url=tcp://xsdd.xxxxxxxxx.local:8333 </jee:environment> </jee:jndi-lookup> <jee:jndi-lookup id="queue" jndi-name="ibalance/iBatch/ReBalances"> <jee:environment> java.naming.factory.initial=com.tibco.tibjms.naming.TibjmsInitialContextFactory java.naming.provider.url=tcp://xxxxxxx.xxxxxxxxxxx.local:8333 </jee:environment> </jee:jndi-lookup>
The error i am getting is
Caused by: java.lang.ClassNotFoundException: com.tibco.tibjms.naming.TibjmsInitialContextFactory at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1701) at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1546) at java.lang.Class.forName0(Native Method) at java.lang.Class.forName(Class.java:247) at com.sun.naming.internal.VersionHelper12.loadClass(VersionHelper12.java:46) at javax.naming.spi.NamingManager.getInitialContext(NamingManager.java:654)
Any suggestion would be of great help.