【问题标题】:talend tJMSInput with WSO2 Message Broker带有 WSO2 消息代理的 talend tJMSInput
【发布时间】:2015-10-11 02:31:03
【问题描述】:

我正在创建一个 talend 作业,它允许我从 JMS 队列中获取消息。为此,我尝试在 talend 中配置一个 tJMSInput 组件来监听消息代理队列。

当我尝试运行创建的作业时,我收到以下错误:

`Démarrage du job sauvegarde a 16:23 21/07/2015`.
[statistics] connecting to socket on port 3805
[statistics] connected
[main] WARN org.wso2.andes.jndi.PropertiesFileInitialContextFactory - Unable to load property file specified in Provider_URL:amqp://admin:admin@clientID:carbon?brokerlist='tcp://localhost:5682'
Due to:amqp:\admin:admin@clientID:carbon?brokerlist='tcp:\localhost:5682' (La syntaxe du nom de fichier, de répertoire ou de volume est incorrecte)

组件 tJMSInput_1 中的异常

javax.naming.NameNotFoundException: myQueueConnectionFactory
at org.wso2.andes.jndi.ReadOnlyContext.lookup(ReadOnlyContext.java:271)
at javax.naming.InitialContext.lookup(Unknown Source)
at  output_agent.sauvegarde_0_1.sauvegarde.tJMSInput_1Process(sauvegarde.java:882)
at output_agent.sauvegarde_0_1.sauvegarde.tLibraryLoad_2Process(sauvegarde.java:641)
at output_agent.sauvegarde_0_1.sauvegarde.tInitLog4J_1Process(sauvegarde.java:538)
  at 
     output_agent.sauvegarde_0_1.sauvegarde.tPrejob_1Process(sauvegarde.java:410)
  at 
 output_agent.sauvegarde_0_1.sauvegarde.runJobInTOS(sauvegarde.java:1259)
 at output_agent.sauvegarde_0_1.sauvegarde.main(sauvegarde.java:1118)
[statistics] disconnected
Job sauvegarde terminé à 16:23 21/07/2015. [Code sortie=1]`

我不知道它是来自 URL 格式还是连接工厂名称,我已经尝试过使用 ActiveMQ 队列并且它运行良好。消息代理队列中唯一改变的是 url。

谁能帮帮我。

【问题讨论】:

  • 我弄错标题应该是 talend tJMSInput with wso2 message broker
  • 您可以尝试在调试模式下运行您的作业,看看正在形成的 url 是什么以及哪个步骤给出了异常问题..

标签: jms wso2 wso2esb talend messagebroker


【解决方案1】:

我发现了问题。

qpid 上下文工厂 org.wso2.andes.jndi.PropertiesFileInitialContextFactory 使用字段的方式与 activeMQ 上下文工厂 org.apache.activemq.jndi.ActiveMQInitialContextFactory 不同。

虽然 ActiveMQ 允许您在 Talend 中不使用单独的属性文件,但 Qpid 不允许。

Talend 配置

在 tJMSInput 之前,您必须使用 tLibraryLoad 组件加载 geronimo-jms_1.1_spec-X.X.X.wso2vX.jar 库。

Talend tJMSInput 配置:

  • 模块列表:andes-client-X.XX.wso2vXX.jar
  • 上下文提供者: "org.wso2.andes.jndi.PropertiesFileInitialContextFactory"
  • 服务器网址:“myfile.properties”
  • 连接工厂 JDNI 名称:“qpidConnectionfactory”
  • 消息类型:队列
  • 消息来自:“myQueue”

myfile.properties:

connectionfactory.qpidConnectionfactory = amqp://admin:admin@clientID/carbon?brokerlist='tcp://localhost:5682'
queue.myQueue= myQueue

参考:Qpid Wiki

【讨论】:

    猜你喜欢
    • 2015-07-17
    • 2016-03-07
    • 1970-01-01
    • 2014-05-12
    • 1970-01-01
    • 1970-01-01
    • 2017-02-12
    • 2018-01-11
    • 2013-02-26
    相关资源
    最近更新 更多