camel-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Claus Ibsen <claus.ib...@gmail.com>
Subject Re: Renamer failing to rename 'From' File when using multiple endpoints via Multicast
Date Fri, 22 Jan 2010 13:47:41 GMT
On Fri, Jan 22, 2010 at 2:41 PM, Andy Bourke <andy.bourke@pcmsgroup.com> wrote:
>
> If I understand it right, the multicast allows the same payload to be
> processed by multiple end points? If I remove the multicast then won't the
> second enpoint (in the now non-multicast pipeline) try to process the output
> from the first one?
>

Correct but just to see if the file gets renamed.
Also try the multicast without parallel as well.


>
> Claus Ibsen-2 wrote:
>>
>> On Fri, Jan 22, 2010 at 1:20 PM, Andy Bourke <andy.bourke@pcmsgroup.com>
>> wrote:
>>>
>>> Hi all,
>>>
>>> I am new to camel and have hit a problem that I hope someone can help me
>>> with.
>>>
>>> I have a route that looks for a file in a directory => unmarshals the
>>> file
>>> using <CSV> => transforms the output from the unmarshal (which is
>>> List<List<String>>) to a List of data objetcs => passes the List
of data
>>> objects to a processor which does the intelligent mapping of the input
>>> data
>>> to the output which is a List of Objects => passes the List of Objects to
>>> a
>>> <multicast> pipeline who's endpoints traverse the List of Objects and
>>> extract the data, that they are interested in, formatting the output in
>>> to a
>>> List of Map objects so that the <CSV> marshaller can marshal to a named
>>> file.
>>>
>>> This is the route:
>>>
>>>        <route id="iq">
>>>            <from uri="file:/data/iq/inbound/"/>
>>>            <unmarshal>
>>>                <csv id="pipeCsvDataFormat"/>
>>>            </unmarshal>
>>>            <bean ref="iqTransform" method="doTransform"/>
>>>            <to uri="bean:iqProcessor?method=process"/>
>>>            <multicast parallelProcessing="true">
>>>                <pipeline>
>>>                    <to uri="bean:formatOutput?method=formatHeader"/>
>>>                    <marshal>
>>>                        <csv />
>>>                    </marshal>
>>>                    <to
>>> uri="file:/data/iq/outbound/?fileName=Txn_Header.txt"/>
>>>                </pipeline>
>>>                <pipeline>
>>>                    <to uri="bean:formatOutput?method=formatLineHeader"/>
>>>                    <marshal>
>>>                        <csv />
>>>                    </marshal>
>>>                    <to
>>> uri="file:/data/iq/outbound/?fileName=Line_Header.txt"/>
>>>                </pipeline>
>>>            </multicast>
>>>        </route>
>>>
>>>
>>> As expected, I get a correctly formatted file named Txn_Header.txt and a
>>> file named Line_Header.txt in the /outbound directory. So the routing
>>> seems
>>> to have worked fine.
>>>
>>> The problem is that the original file does not get renamed in to the
>>> .camel
>>> subdirectory and so the file gets processed again and again.
>>>
>>> If I remove the second endpoint in the multicast so that only the
>>> Txn_Header.txt file is produced then the original file does get renamed
>>> and
>>> the route ends successfully.
>>>
>>
>> And with no mulitcast have you tried that?
>>
>>
>>> Can someone help me understand what I have done wrong please?
>>>
>>>
>>>
>>> --
>>> View this message in context:
>>> http://old.nabble.com/Renamer-failing-to-rename-%27From%27-File-when-using-multiple-endpoints-via-Multicast-tp27272407p27272407.html
>>> Sent from the Camel - Users mailing list archive at Nabble.com.
>>>
>>>
>>
>>
>>
>> --
>> Claus Ibsen
>> Apache Camel Committer
>>
>> Author of Camel in Action: http://www.manning.com/ibsen/
>> Open Source Integration: http://fusesource.com
>> Blog: http://davsclaus.blogspot.com/
>> Twitter: http://twitter.com/davsclaus
>>
>>
>
> --
> View this message in context: http://old.nabble.com/Renamer-failing-to-rename-%27From%27-File-when-using-multiple-endpoints-via-Multicast-tp27272407p27273273.html
> Sent from the Camel - Users mailing list archive at Nabble.com.
>
>



-- 
Claus Ibsen
Apache Camel Committer

Author of Camel in Action: http://www.manning.com/ibsen/
Open Source Integration: http://fusesource.com
Blog: http://davsclaus.blogspot.com/
Twitter: http://twitter.com/davsclaus

Mime
View raw message