Apache верблюд, как отправить имя файла из одного компонента файла маршрутизатора в другой компонент файла маршрутизатора - PullRequest
0 голосов
/ 31 мая 2019

У меня есть file1.jpg, file2.jpg, file3.jpg в DirA. У меня есть file1.json, file2.json, file3.json в DirB

Как мне создать маршрут файла верблюда apache таким образом, чтобы первый маршрут выбирал файл file1.jpg из DirA, обрабатывал и передавал имя file1 во второй маршрут, чтобы он мог читать file1.json и обрабатывать.

CamelContext context = new DefaultCamelContext();
context.addRoutes(new RouteBuilder() {
            public void configure() {
from("file:///DirA/?noop=true"). bean(MyBean.class,"doSomeThingWithJPG(${file:absolute.path})").

from("file:///DirB/?noop=true&fileName=${file:name}.json").
bean(AnotherBean.class,"doSomeThingWithJSON(${file:absolute.path})") ;
    } 
 }) 

Второй from (file:///) компонент также указывает на файл в DirA вместо файлов в DirB

1 Ответ

1 голос
/ 01 июня 2019

Вы можете:

  • Подготовить файл JSON
  • Создать процессор или компонент, который копирует именованный файл из одного каталога в другой
  • Вызвать этот процессор послеобработка JPG, чтобы скопировать JSON в другой каталог
  • У второго опроса прослушивателя файлов этот другой каталог

enter image description here

...