camel-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Claus Ibsen (JIRA)" <>
Subject [jira] Commented: (CAMEL-2394) Renamer failing to rename 'From' File when using multiple endpoints via Multicast
Date Wed, 03 Feb 2010 11:13:32 GMT


Claus Ibsen commented on CAMEL-2394:

Andy can you create a sample of your problem and attach as zip. Can be used to look into the

Its either the CSV data format or something you may do in your beans. The file to be moved
in the end is store as a on completion on the Exchange should thus not be affected by headers.
But I may give it a 2nd look in 2.3 as there is another issue when you consume from file and
then use a pollEnrich to poll in a 2nd file.

> Renamer failing to rename 'From' File when using multiple endpoints via Multicast
> ---------------------------------------------------------------------------------
>                 Key: CAMEL-2394
>                 URL:
>             Project: Apache Camel
>          Issue Type: Bug
>          Components: camel-core
>    Affects Versions: 2.1.0
>         Environment: Windows Vista Business Service Pack 2, 32-bit
>            Reporter: Andy Bourke
>             Fix For: 2.3.0
> [Original Issue at Nabble|]
> 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 objects => 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: 
> {code}
>         <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> 
> {code}
> 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. 

This message is automatically generated by JIRA.
You can reply to this email to add a comment to the issue online.

View raw message