wso2 - 在 WSO2 流处理器中启动 Siddhi 应用程序时出错:javax/jms/JMSContext
问题描述
我正在尝试使用来自 Tibco EMS 的队列作为 Siddhi 应用程序的来源。
为此,我使用有关 ActiveMQ 的文档作为参考,并为 tibjms.jar 成功生成了 OSGi 转换的 jar。
在这一步中,我能够注册 InitialContextFactory:
C:\PROGRA~1\WSO2\STREAM~1\446521~1.0\bin>icf-provider.bat com.tibco.tibjms.naming.TibjmsInitialContextFactory C:/DevTools/tibjms.jar C:/DevTools/
JAVA_HOME environment variable is set to C:\Program Files\Java\jdk1.8.0_151
CARBON_HOME environment variable is set to C:\PROGRA~1\WSO2\STREAM~1\446521~1.0\bin\..
Feb 18, 2020 10:46:05 PM org.wso2.carbon.tools.spi.ICFProviderTool execute
INFO: Executing 'jar uf C:\DevTools\tibjms\tibjms.jar -C C:\DevTools\tibjms \internal\CustomBundleActivator.class'
Feb 18, 2020 10:46:05 PM org.wso2.carbon.tools.spi.ICFProviderTool addBundleActivatorHeader
INFO: Running jar to bundle conversion
Feb 18, 2020 10:46:06 PM org.wso2.carbon.tools.converter.utils.BundleGeneratorUtils convertFromJarToBundle
INFO: Created the OSGi bundle tibjms_1.0.0.jar for JAR file C:\DevTools\tibjms\tibjms.jar
然后,我为剩余的 tibco ems jar 创建了 OSGI 转换的 jar:
- jms-2.0.jar
- tibemsd_sec.jar
- tibjmsadmin.jar
- tibjmsapps.jar
- tibjmsufo.jar
- tibrvjms.jar
此时,我将所有 OSGI jar 复制到“/lib”目录,将原始 jar 复制到“/samples/sample-clients/lib”目录。
接下来,我向队列“queue.sample”发送了几条消息,正文为“hello queue”。
然后,我创建了以下 Siddhi 应用程序以使用 EMS 队列作为源:
@App:name('TIBCOQueueSource')
@App:description('Use EMS que as SP source')
@source(type = 'jms', destination = "queue.sample", factory.initial = "com.tibco.tibjms.naming.TibjmsInitialContextFactory", provider.url = "tibjmsnaming://localhost:7222", transport.jms.ConnectionFactoryJNDIName= "QueueConnectionFactory", transport.jms.UserName= "admin", transport.jms.Password = "admin",@map(type = 'text'))
define stream inputStream (name string);
@info(name='query_name')
from inputStream
select name
insert into outputStream;
from outputStream#log("logger")
select *
insert into tmp;
最后,当我运行事件模拟器时,我在日志中收到以下错误:
[2020-02-18 22:59:31,006] ERROR {org.wso2.siddhi.core.SiddhiAppRuntime} - Error starting Siddhi App 'TIBCOQueueSource', triggering shutdown process. javax/jms/JMSContext
那么,根据这个描述,我做错了什么吗?我错过了这个过程的任何步骤吗?
提前感谢所有帮助
解决方案
推荐阅读
- python - Django - 为锦标赛创建模型
- c - 用c语言计算输入数字的总和
- flutter - 基于系统明暗模式的动态主题变化
- php - 当相关表一无所获时,Eloquent 使查询返回 null
- flutter - 如何让横向在颤动中只旋转一个选定的页面
- python - 在 txt 文件中打印二维数组仅保存最后一行 - .join 的使用不正确?
- azure - Azure.Cosmos 还是 Microsoft.Azure.Cosmos、Azure.Storage.Blob 还是 Microsoft.Azure.Storage.Blob?适用于 .NET Core 3.1
- html - 我怎样才能看到 li hover w?
- html - 在 MaterializeCSS 中垂直对齐并排列
- chart.js - 有没有办法进行自动滚动?