camel-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Claus Ibsen <>
Subject Re: pollEnrich doesn't look for FILE_NAME
Date Wed, 16 Sep 2009 16:06:12 GMT
On Wed, Sep 16, 2009 at 5:52 PM, Dragisa Krsmanovic
<> wrote:
> On Tue, 2009-09-15 at 22:53 -0700, Fintan Bolton wrote:
>> The first argument to pollEnrich() specifies a consumer endpoint, not a
>> producer endpoint. So, instead of sending the current exchange (the one
>> containing the header) to the endpoint, the pollEnrich() command creates a
>> new exchange object containing one of the files from the specified
>> directory, /test/data. In other words, the current exchange is ignored when
>> pollEnrich() polls the file system, and this is the expected behaviour.
>> If you want to read a specific file, you could use the fileName option
>> option in the URI. For example:
>> .pollEnrich("file:/test/data?noop=true&readLock=none&fileName=foobar.xml",10000)
>> For details of the fileName option, see
> Is there a way to set file name in pollEnrich dynamically ?
> I want something like:
> ...
> .setHeader(Exchange.FILE_NAME).xpath("...")
> .pollEnrich("file:/test/data?noop=true&readLock=none", 10000)

I actually think you hit a shortcoming of the PollingConsumer API.
This API does not support supplying options from outside.
Could you create a JIRA ticket then we can have a look at in how to
provide such a new feature to this API.

Instead of the pollEnrich you can use a processor/bean etc. where you
use the consumer template which supports you to dynamic set the
endpoint URI.
In which this endpoint URI should  contain a fileName option which the
file you want to read.

See more here:

> --
> Dragisa Krsmanovic
> Java Developer
> Public Library of Science

Claus Ibsen
Apache Camel Committer

Open Source Integration:

View raw message