Apache骆驼如何将文件名从一个路由器文件组件发送到另一个路由器文件组件

时间:2019-05-31 02:02:11

标签: apache-camel spring-camel eip

我在DirA中拥有file1.jpg,file2.jpg,file3.jpg。 我在DirB中有file1.json,file2.json,file3.json

我该如何创建一个Apache骆驼文件路径,使得第一个路径从DirA中选择file1.jpg,然后将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 个答案:

答案 0 :(得分:0)

您可以:

  • 暂存JSON文件
  • 编写将已命名文件从一个目录复制到另一个目录的处理器或bean
  • 在处理完JPG后调用该处理器,以将JSON复制到另一个目录
  • 让第二个文件侦听器轮询另一个目录

enter image description here