0

首先:我对 WSO2 产品很陌生,但我花时间阅读了一些关于我的问题的帖子。

我使用什么产品: WSO EI 6.1.1

我想要实现的目标:建立与 TIBCO EMS (MOM) 的 JMS 连接,订阅给定主题并将接收到的消息作为 xml 文件写入文件系统。给定的文件夹是一个挂载的网络驱动器,进一步的应用程序将在给定的文件夹中查找新文件,这是由于遗留代码,我不想(没有时间)更改文件夹查找,例如肥皂调用。

我已经做了什么:我已经阅读了最新的文档并找到了这个: Configure with Tibco EMS

经过一些尝试和错误,我认为我已经为 TIBCO EMS 设置了 JMS 侦听器。一开始我收到了一堆现在已修复的连接和身份验证错误,所以我认为与 tibco 服务器的一般连接是有效的。

<transportReceiver name="jms" class="org.apache.axis2.transport.jms.JMSListener">
<parameter name="TopicConnectionFactory" locked="false">
    <parameter locked="false" name="java.naming.factory.initial">com.tibco.tibjms.naming.TibjmsInitialContextFactory</parameter>
    <parameter locked="false" name="java.naming.provider.url">tcp://172.123.123.123:123</parameter>
    <parameter locked="false" name="java.naming.security.principal">user</parameter>
    <parameter locked="false" name="java.naming.security.credentials">pass</parameter>
    <parameter locked="false" name="transport.jms.ConnectionFactoryJNDIName">TopicConnectionFactory</parameter>
    <parameter locked="false" name="transport.jms.JMSSpecVersion">1.0.2b</parameter>
    <parameter locked="false" name="transport.jms.ConnectionFactoryType">topic</parameter>
    <parameter locked="false" name="transport.jms.UserName">user</parameter>
    <parameter locked="false" name="transport.jms.Password">pass</parameter>
    <parameter locked="false" name="transport.jms.CacheLevel">session</parameter>
</parameter>
</transportReceiver>

我认为下一步是订阅特定主题并将其写入文件系统,但我有点卡在这里。遗憾的是,文档中的其他示例在这里对我没有帮助,也许我错过了如何在此处继续的大图,因为我对 esb / ei 产品还很陌生。

我根本不知道需要哪个功能组件(端点、代理、使用配置的 jms 连接以及如何将其写入文件系统。

如果有人能把我推向正确的方向,那就太好了。

亲切的问候

4

1 回答 1

0

首先,您需要有一个 JMS 代理或一个入站端点来侦听您的队列。参考[1]。那么就需要使用WSO2 ESB(VFS传输)的文件处理能力。参考[2] fileWriteSequence 序列。从队列接收到消息后,您应该在代理服务或入站端点中调用这种类型的序列。

[1] - https://docs.wso2.com/display/ESB500/ESB+as+a+JMS+Consumer [2] - https://docs.wso2.com/display/ESB500/Sample+271%3A +File+Processing#Sample271:FileProcessing-CreateandConfigurefileWriteSequence

于 2017-11-14T08:59:19.607 回答