2015-07-21 77 views
0

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

当我尝试运行作业创建我得到以下错误:

`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:[email protected]:carbon?brokerlist='tcp://localhost:5682' 
Due to:amqp:\admin:[email protected]: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。

任何人都可以帮助我。

+0

我犯了一个错误的标题应与WSO2进行了Talend tJMSInput消息经纪人 –

+0

你可以尝试在调试模式下运行你的工作,看看什么是网址g形成,哪一步是异常问题.. – garpitmzn

回答

0

我发现了这个问题。

的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配置:

  • 模块列表:安第斯山脉-客户X.XX.wso2vXX.jar
  • 上下文提供: “org.wso2.andes.jndi.PropertiesFileInitialContextFactory”
  • 服务器URL: “myfile.properties”
  • 连接工厂JDNI名称: “qpidConnectionfactory”
  • 消息类型:队列
  • 消息来源: “myQueue中”

myfile.properties:

connectionfactory.qpidConnectionfactory = amqp://admin:[email protected]/carbon?brokerlist='tcp://localhost:5682' 
queue.myQueue= myQueue 

参考:Qpid Wiki

相关问题