2015-07-21 11 views
0

Я создаю работу таланта, которая позволит мне получить форму сообщения в очереди JMS. Для этого я пытаюсь настроить компонент tJMSInput в talend для прослушивания очереди брокера сообщений.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

Я сделал ошибку, название должно быть Talend tJMSInput с WSO2 message broker –

+0

вы можете попробовать запустить свою работу в режиме отладки и посмотреть, что такое URL-адрес g, и какой шаг дает исключение. – garpitmzn

ответ

0

Я нашел проблему.

Завод-изготовитель qpid context org.wso2.andes.jndi.PropertiesFileInitialContextFactory не использует поля так же, как фабрика контекста activeMQ org.apache.activemq.jndi.ActiveMQInitialContextFactory.

Хотя ActiveMQ позволяет вам не использовать отдельный файл свойств с Talend, Qpid этого не делает.

Конфигурация Talend

Перед tJMSInput, вы должны загрузить библиотеку Джеронимо-jms_1.1_spec-X.X.X.wso2vX.jar с компонентом tLibraryLoad. Конфигурация

Talend tJMSInput:

  • Список модулей: Анды-клиент-X.XX.wso2vXX.jar
  • Context Поставщик: "org.wso2.andes.jndi.PropertiesFileInitialContextFactory"
  • URL-адрес сервера: «myfile.properties»
  • Connection Factory JDNI Название: "qpidConnectionfactory"
  • Тип сообщения: Очередь
  • Сообщение от: "myQueue"

myfile.properties:

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

Ссылка: Qpid Wiki