Tibco的错误:ClassNotFoundException的:com.tibco.tibjms.

2019-09-20 04:34发布

我面对这个问题。 我测试TIBCO下面的配置(本地TIBCO)和它的工作原理

<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>

但是,当我尝试连接到中央TIBCO(只提供者改变)下面的配置我得到ClassNotFound的错误

  <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>

我得到的错误是

 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)

任何建议将是很大的帮助。

Answer 1:

这显然是一个classpath的错误。 你同时运行在本地机器上?

如果第二个正在运行在服务器上的某个地方,确保EMS罐子库在classpath引用。 我相信你是后一个是tibjms.jar

您如何引用的jar文件是依赖于你的环境和技术。



Answer 2:

你缺少从classpath tibjms.jar。 如果EMS服务器上的任何安全性选项被启用,请确保您添加tibcrypt.jar为好。



Answer 3:

  1. 关闭TIBCO设计师。
  2. 打开位于路径C designer.tra文件:\ TIBCO \设计\ 5.10 \ BIN
  3. 添加此路径;%TRA_HOME%/ lib目录/ TIBCOjms.jar在##的最后部分,这将被预置到tibco.class.path.extended
  4. 复制所附小册子在路径C:\ TIBCO \ TRA \ 5.10 \ lib中
  5. 准备好这应该工作,刚开始的设计师去。

下载的jar TIBCOjms.jar



Answer 4:

就我而言,问题是很愚蠢的。 有在类路径的后面加上一个空格。 即, “com.tibco.tibjms.TibjmsQueueConnectionFactory”



文章来源: Tibco error: ClassNotFoundException: com.tibco.tibjms.naming.TibjmsInitialContextFactory