Do not input private or sensitive data. View Qlik Privacy & Cookie Policy.
Skip to main content

Announcements
Discover how organizations are unlocking new revenue streams: Watch here
cancel
Showing results for 
Search instead for 
Did you mean: 
Anonymous
Not applicable

Talend created SOAP service request as input for ActiveMQ queue

Sorry for the newbie question, but I created a SOAP webservice in Talend (6.2.1 community edition) which expects a (complex) XML as payload. I then want to send this payload to a queue for processing in a later stage by a different application. So I was thinking off a flow like this:
tMomConnection
|
OnSubJobOk
|
tESBProviderRequest -> tMomOutput -> tXMLMap -> tESBProviderResponse
I use an existing connection to ActiveMQ which works fine, the mesage body is set to Bytes Message.
The results are:
Execution failed : Failed to generate code.

I expect the problem to be between the fact that I receive a payload and send a message to the queue.
Anybody a clue on how to solve this?
Labels (4)
2 Replies
Anonymous
Not applicable
Author

This error can only appear if some settings in the component are incorrect. But actually this should not happen.
I suggest you deactivate at first the MOM components and check again if you can build the job.
This way you will find out which component causes the error.
After that we can try to find what went wrong in the component settings.
Anonymous
Not applicable
Author

Hi,
Deactivating the tMomOoutput gives several errors due to the fact that you have no valid flow. Running with only:
tMomConnection
|
OnSubJobOk
|
tESBProviderRequest -> tXMLMap -> tESBProviderResponse
Works fine.
tMomConnection
|
OnSubJobOk
|
tESBProviderRequest -> tConvertType -> tMomOutput -> tXMLMap -> tESBProviderResponse
And when I convert the payload (Document) to message (String) also works. I am able to retrieve the message from the queue and process this in a later stage. Only the "message" is corrupt after the tMomOutput, I cannot post it to a second queue. Error "Type mismatch: cannot convert from String to bytes[]" which is what the job just did for the first post to a queue? The schema for the second MomOutput actually states an input of type bytes[] and the first Momoutput produces a bytes[].
Now trying to work with a second job/route which will consume the first message on the queue and dispatch this to the correct queues.
          0683p000009MC0K.png