Apache Camel: Как мне выполнить простую модификацию файлов в одном каталоге, а затем сохранить результат в другом каталоге?

Кажется простым, но я не могу заставить его работать. Я хочу взять все файлы, помещенные в путь "от", изменить их содержимое и поместить измененный файл в путь "до" (с расширением .txt). Вот что у меня есть:

this.context.addRoutes(new RouteBuilder() {
    public void configure() {
        from( "file:" + getFromPath() + getOptions() )
        .to( "file:" + getToPath() + "?fileName=${file:name.noext}.txt")
        .process(new Processor() {
            public void process(Exchange exchange) throws Exception {
                String name = (String) exchange.getIn().getHeader("CamelFileName");
                File body = exchange.getIn().getBody(File.class);
                String parsedText = modifyFile(body);
                exchange.getOut().setBody(parsedText);
            }
         })
     ;}
  });

Выходной файл создается, но его содержимое точно такое же, как и во входном файле. Т.е. файл не изменяется. Я подтвердил, что метод "modifyFile" возвращает то, что я хочу , но не могу заставить его записать это содержимое в путь вывода ("к").

Спасибо за помощь!

0
задан PaulP 7 October 2011 в 21:58
поделиться