Camel - 如何使用在body上发送的对象内部的对象进行拆分

时间:2014-10-07 20:34:50

标签: apache-camel

也许这是一个非常愚蠢的问题,但这将有助于澄清我对骆驼的理解。 我有一个seda队列,我插入FromData类型的对象。 FromData有一个方法

public GenericFile<File> getFirstFile () {
    return files.values().iterator().next();
}

现在在我的路线中,我想从队列中读取并拆分文件的内容。 我想出了这个解决方案。有没有更好的方法来引用body.firstFile,否则就是在执行.split(simple(“$ {body.firstFile}”))

public void configure() {
    from("seda:processReceiver")
    .split(simple("${body.firstFile}"))
    .split(body().tokenize(",")).streaming()
    .process(new Processor() {
         public void process(Exchange msg) {
             System.out.println(msg.getIn().getBody());
         }
    });
} 

1 个答案:

答案 0 :(得分:1)

这适合:

.setBody(simple("${body.firstFile}"))

希望这会有所帮助:)