WSO2 ESB与Tibco EMS 8.0集成的问题
我尝试使用Tibco EMS在WSO2 ESB上启用JMS传输 使用Tibco BW 6.3.0-将以下客户端JAR复制到WSO2 ESB与Tibco EMS 8.0集成的问题,wso2,esb,tibco-ems,tibco-business-works,Wso2,Esb,Tibco Ems,Tibco Business Works,我尝试使用Tibco EMS在WSO2 ESB上启用JMS传输 使用Tibco BW 6.3.0-将以下客户端JAR复制到{wso2esb-4.8.0}\repository\components\lib tibjms.jar、jms.jar-工作时没有任何问题 使用Tibco EMS 8.0-将以下客户端JAR复制到{wso2esb-4.8.0}\repository\components\lib tibjms.jar,jms-2.0.jar-结果异常为ClassNotFound 根据WSO2
{wso2esb-4.8.0}\repository\components\lib
tibjms.jar、jms.jar
-工作时没有任何问题
使用Tibco EMS 8.0-将以下客户端JAR复制到{wso2esb-4.8.0}\repository\components\lib
tibjms.jar,jms-2.0.jar
-结果异常为ClassNotFound
根据WSO2 ESB文档,它只支持JMS 1.1和1.0.2b规范,所以尝试了JAR的组合
i、 Tibco-6.3.0中的e.Jms.jar和Tibco 8.0中的tibjms.jar-导致与ClassNotFound相同的异常。下面是异常堆栈跟踪
NoClassDefFoundError:javax/jms/JMSContext
位于com.tibco.tibjms.naming.TibjmsContext$Messenger。(TibjmsContext.java:316)
位于com.tibco.tibjms.naming.TibjmsContext.lookup(TibjmsContext.java:651)
位于com.tibco.tibjms.naming.TibjmsContext.lookup(TibjmsContext.java:491)
在javax.naming.InitialContext.lookup(InitialContext.java:411)
位于org.apache.axis2.transport.jms.JMSUtils.lookup(JMSUtils.java:583)
位于org.apache.axis2.transport.jms.JMSConnectionFactory(JMSConnectionFactory.java:93)
位于org.apache.axis2.transport.jms.JMSConnectionFactoryManager.loadConnectionFactoryDefinitions(JMSConnectionFactoryManager.java:58)
位于org.apache.axis2.transport.jms.JMSConnectionFactoryManager。(JMSConnectionFactoryManager.java:45)
位于org.apache.axis2.transport.jms.JMSSender.init(JMSSender.java:67)
位于org.apache.axis2.context.ConfigurationContextFactory.initTransportSenders(ConfigurationContextFactory.java:300)
位于org.apache.axis2.context.ConfigurationContextFactory.init(ConfigurationContextFactory.java:231)
位于org.apache.axis2.context.ConfigurationContextFactory.createConfigurationContext(ConfigurationContextFactory.java:93)
位于org.wso2.carbon.core.CarbonConfigurationContextFactory.createNewConfigurationContext(CarbonConfigurationContextFactory.java:65)
位于org.wso2.carbon.core.init.CarbonServerManager.initializeCarbon(CarbonServerManager.java:398)
位于org.wso2.carbon.core.init.CarbonServerManager.start(CarbonServerManager.java:219)
在org.wso2.carbon.core.internal.CarbonCoreServiceComponent.activate上(CarbonCoreServiceComponent.java:77)
axis2.xml中的Trasport配置
com.tibco.tibjms.naming.TibjmsInitialContextFactory
tcp://127.0.0.1:7222
管理
ESB-POC-CF-00
1.1
队列
xprk119
esb119
因为Tibco 8.0支持向后兼容性。我们有兴趣将esb与tibco 8.0版本集成。请告诉我解决此问题的方法。您还必须包括EMS 8.0发行版中的jms-2.0.jar。那就是你失踪的班级所在的地方
HTH.我在WebSphere和Tibco 8上也遇到了类似的问题。将jars-tibjms.jar和ms-2.0.jar添加到类路径解决了这个问题
几天前我也有类似的问题。我认为问题与OSGi和类装入器的装入顺序有关。我已经用EMS 8.2附带的OSGi插件(我不知道以前的8.x是否也有)解决了这个问题,并从需要它们的插件中引用了它们。Hi Ramon,我复制了tibco EMS 8.0附带的Tibjms.jar、jms-2.0.jar,但结果与ClassNotFound相同。下面是异常堆栈跟踪。NoClassDefFoundError:javax/jms/JMSContext。
<transportReceiver class="org.apache.axis2.transport.jms.JMSListener" name="jms">
<parameter locked="false" name="ESB-POC-CF-00">
<parameter locked="false" name="java.naming.factory.initial">com.tibco.tibjms.naming.TibjmsInitialContextFactory</parameter>
<parameter locked="false" name="java.naming.provider.url">tcp://127.0.0.1:7222</parameter>
<parameter locked="false" name="java.naming.security.principal">admin</parameter>
<parameter locked="false" name="java.naming.security.credentials"/>
<parameter locked="false" name="transport.jms.ConnectionFactoryJNDIName">ESB-POC-CF-00</parameter>
<parameter locked="false" name="transport.jms.JMSSpecVersion">1.1</parameter>
<parameter locked="false" name="transport.jms.ConnectionFactoryType">queue</parameter>
<parameter locked="false" name="transport.jms.UserName">xprk119</parameter>
<parameter locked="false" name="transport.jms.Password">esb119</parameter>
</parameter>