Perform data transformation in mediation

One Star

Perform data transformation in mediation

I'm brand new to Talend ESB. Here is a simple task I'm trying to achieve. (I'm using Talend Open Studio for ESB 5.1.0)
I want to route a xml file from folder A to folder B with some transformation in the middle. I assume I should create a mediation for this. And I configured two "cFile" endpoints for the input and output, but I can't figure out how to make the transformation happen.
Any suggestions for me?
One Star

Re: Perform data transformation in mediation

Can any experts give me some directions how to make it happen? Or is my intention to implement it with route totally wrong?
One Star

Re: Perform data transformation in mediation

Hi,
if you don't want to directly use XSL, this may be useful
http://www.talendforge.org/forum/viewtopic.php?id=23666
Gabriel
Employee

Re: Perform data transformation in mediation

What format is the data in the flat files? XML, comma-delimited, other?
You have a few choices depending on what you are comfortable with and the file format. For XML, if you are comfortable with xslt or xquery you can use the cMessageEndpoint with the appropriate URI. The cMessageEndpoint is the catch-all utility component for any other Camel component that does not have a specific icon. The camel-xslt component is described here http://camel.apache.org/xslt.html . You can also use xquery which is described here http://camel.apache.org/xquery.html . The only drawback with these is components is they require you to write your own xslt or xquery, which may or may not be a problem for you.
The Oakland tool mentioned by Gabriel is is also very nice, supports a variety of formats, and has a GUI editor. Plus it has a camel component that directly plugs into Talend ESB.
Another option is to use the tMAP or tXMLmap from the Integration view. The simplest way to incorporate these components into your mediation Route is to use JMS.
One Star

Re: Perform data transformation in mediation

Thanks for your suggestions. I'll give them a try.
But in my opinion, if I can directly use tXmlMap component in my route, that would be the ideal.
Employee

Re: Perform data transformation in mediation

In that case I would consider the following approach. Use the cJMS component in ESB to send the message to a DI job that is listening using the tMOM component. Route the tMOM component to a tXMLmap and then send the result back to the reply back using reply-to header. Alternatively, if the reply-to address is fixed you can route it to a fixed queue.