Dennis, In your case, I think you are missing the idempotent option in the File URI.
Best regards, Alex soto > On Aug 18, 2016, at 10:59 AM, Dennis Bohnstedt Hansen <d...@miracle.dk> wrote: > > Hi > > I’m seeing the same problem with pollEnrich, using a dynamic endpoint. I > send a my route a filename in the message-body, and expect the file content > as a reply: > > from("direct:getFileContent") > .log("Filename : ${body}") > > .pollEnrich().simple("file:/temp?readLock=none&noop=true&fileName=${body}").aggregationStrategy(new > BodyOnlyAggregationStrategy()).timeout(5000) > .log(“FileContent: ${body}"); > > The first thing i experienced, was that i lost my headers, when i did not > set an aggregation strategy, to my “BodyOnlyAggregationStrategy”, is a > fairly started out as a fairly simple strategy, that just copied the body > to the original exchange: > > public Exchange aggregate(Exchange original, Exchange resource) { > if (resource != null && resource.getIn() != null) { > Object resourceResponse = resource.getIn().getBody(); > if (original.getPattern().isOutCapable()) { > original.getOut().setBody(resourceResponse); > } else { > original.getIn().setBody(resourceResponse); > } > } > return original; > } > > > The first time i hit my route, everything works just fine, but after that, > i start waiting for the timeout, and returns null to the > AggregationStrategy “resource” Exchange. If i do not set a timeout i hangs > forever… > > Regards > / Dennis Bohnstedt Hansen > Software designer > Miracle A/S - www.miracle.dk <http://www.miracleas.dk/> > +45 53747254 > > > On Thu, Aug 18, 2016 at 8:12 AM, Claus Ibsen <claus.ib...@gmail.com> wrote: > >> Its easier to do a message transformation and set the body as a >> java.io.File >> >> <transform> >> <simple type="java.io.File">{{env:HOME}}/my-dir/${body}</simple> >> </transform> >> >> >> On Tue, Aug 16, 2016 at 8:39 PM, Alex Soto <alex.s...@envieta.com> wrote: >>> Hello, >>> >>> I am experiencing erratic results when using the Poll Enrich with a >> static file. >>> The file is static in the sense that it never changes, so I am setting >> both the noop=true and the idempotent=false. >>> Basically I need to be able to serve this same files for ever, and not >> move it or deleted it. >>> >>> My route sets the body with the file name, then it continues with: >>> >>> <pollEnrich timeout="5000"> >>> <simple>file:{{env:HOME}}/my-dir?noop=true&fileName=${ >> body}&idempotent=false</simple> >>> </pollEnrich> >>> >>> It works a few times, but after this is executed several times (from >> multiple clients concurrently), the body becomes null, even though, the >> file is still present in the directory. >>> Am I setting the options correctly? How can this be accomplished? >>> >>> Best regards, >>> Alex soto >>> >>> >>> >> >> >> >> -- >> Claus Ibsen >> ----------------- >> http://davsclaus.com @davsclaus >> Camel in Action 2: https://www.manning.com/ibsen2 >>