我使用Apachecamel和spring-boot作为一个应用程序。我需要从目录中读取,然后对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");
}
}
如果您正在使用处理器,您可以从交易所获得如下pojo:
MyPojo pojo = exchange.getIn().getBody(MyPojo.class);
您可以不使用处理器,而是使用POJO bean的方法签名来编写一个普通的POJO bean,以使用
public void doSomething(MyPojo pojo)
然后叫骆驼的豆子。更多详细信息,请访问:http://camel.apache.org/bean