Unlock a world of possibilities! Login now and discover the exclusive benefits awaiting you.
Hello everybody,
I'm beginner on Talend Open Studio for ESB, I'm trying to use the Camel component RabbitMQ with cMessageingEndpoint.
I want to create a message in a specific queue, for the moment, I just create the queue on RabbitMQ, I don't which component I should add in my route to send a new message ...
I didn't find any tutorial or previous message on the forum ...
Thanks a lot !
@remi13wrote:
Hello everybody,
I'm beginner on Talend Open Studio for ESB, I'm trying to use the Camel component RabbitMQ with cMessageingEndpoint.
I want to create a message in a specific queue, for the moment, I just create the queue on RabbitMQ, I don't which component I should add in my route to send a new message ...
I didn't find any tutorial or previous message on the forum ...
Thanks a lot !
Sure?
https://help.talend.com/reader/YtJvt25ynUgZ~sfL~L5dAg/~Frg0sDUnO_FZaY27Y4GVg
it just top from google
Hi @vapukov
thanks for your answer
I already read those help topic/tutorials but I read that it's better/more appropriate to use the cMessagingEndpoint to exchange with RabbitMQ. Maybe it's just the way to read message from RabbitMQ and not to send message ?
Maybe I should use the cAMQP to send message ? I tried it and getting an other error as you can see in attachment.
the cMQConnectionFactory is configured with
The cSetBody is a "simple" type, with "Hello World"
I hope you can help
Thanks a lot for your time
think You miss from - https://community.talend.com/t5/Design-and-Development/RabbitMQ-pub-sub-pattern-using-cMQConnectionF...
it very critical for properties, like - durable, auto-delete and etc by default from Talend it come - both false, and if on Server side any of them enabled - Talend can not connect to server
it work with both variants, but You must mange Your settings:
- from RabbitMQ side - check properties for Exchange/Queue
- from Talend Side - use Advanced settings for add specific properties
P.S. Start from simple case:
- create exchange - Direct/Transiting
- create queue - Transiten/Auto-delete None
- bind queue to exchange
- test
it should work
then start play with settings
Hi @vapukov
Sorry for the late answer, i was on vacation. I'm sorry, i still do not understand. I gave up using :
cTimer - CsetBody - cAMQP - cLog
It wasnt working.
here is my actual Job, you can see the properties. It create the Queue (persistant).
I still dont understand how to set up the message to push in the queue ...
Thanks again for your help
Hello
any chance you can help me ? Here is my job, I want to change the setbody "Hello world" with a JSON to send as message in the queue
Thanks a lot for your time
Hy remi13,
if you want to send a JSON in the cSetBody element, I guess, you can put just the json value in the expression field. See below the first image and after you can see the log, how value appears in the message:
Anyway, this camel component is a little bit tricky, if you want to send or you want to recieve messages. My experience is: if this -cMessagingEndpoint- component is the first componenet in one of your route, the this componenet acts like a message consumer >> cMessagingEndpoint-cLog. If this component not the first and there is a message create componenet before, it acts like a message sender >> cTimer-cSetBody-cMessagingEndpoint.
Best regards
Viktor
Hello
thansk a lot for your answer. We made an API and call it from Talend to add the message in queue.
Your solution seems to be ok, we already tried it but it was not possible to get the content of the message from an other component. I mean, we would like to get the message in setBody from a CSV for example.
Do you know how to do that ?
Try to use Simple language and the expression: "${in.body}". I could read the file content in the message payload.
You can read more about simple language here. There are some useful variable, you can access more things.
Hope this helps!
Viktor
thanks for your reply , i will try that !