Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/365.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 将解组对象传递给Camel处理器_Java_Spring Boot_Apache Camel - Fatal编程技术网

Java 将解组对象传递给Camel处理器

Java 将解组对象传递给Camel处理器,java,spring-boot,apache-camel,Java,Spring Boot,Apache Camel,我正在为一个应用程序使用ApacheCamel和SpringBoot。我需要从一个目录中读取数据,然后解组读取的xml,然后处理解组对象以在其中设置更多数据,然后再次封送数据并将其发送到其他文件夹。我使用下面的路线。请告诉我如何在解组后将POJO发送到处理器。目前,默认情况下,它是进入处理器的交换机 @SpringBootApplication public class CamelApplication extends FatJarRouter { public static void

我正在为一个应用程序使用ApacheCamel和SpringBoot。我需要从一个目录中读取数据,然后解组读取的xml,然后处理解组对象以在其中设置更多数据,然后再次封送数据并将其发送到其他文件夹。我使用下面的路线。请告诉我如何在解组后将POJO发送到处理器。目前,默认情况下,它是进入处理器的交换机

@SpringBootApplication
public class CamelApplication extends FatJarRouter {

    public static void main(String ... args) {
        SpringApplication.run(CamelApplication.class, args);
    }

    @Override
    public void configure() throws Exception {
        from("file:input?noop=true")
        .log("Read from the input file")
        .unmarshal(new XMLtoPOJO())
        .log("Unmarshalled the xml")
        .process(new MyProcessortoSetMoreDatatoPOJO())
        .log("Enriched with more data in processor")
        .to("file:destination")
        .log("Written to output file");
    }
}

如果您正在使用处理器,则可以从exchange获取pojo,如下所示:

MyPojo pojo = exchange.getIn().getBody(MyPojo.class);
您只需编写一个带有POJO bean的方法签名的普通POJO bean即可,而无需编写处理器

 public void doSomething(MyPojo pojo)
然后叫骆驼豆。有关更多详细信息,请访问: