Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/dart/3.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
Apache camel jboss fuse分割列表属性_Apache Camel_Fuseesb_Jbossfuse - Fatal编程技术网

Apache camel jboss fuse分割列表属性

Apache camel jboss fuse分割列表属性,apache-camel,fuseesb,jbossfuse,Apache Camel,Fuseesb,Jbossfuse,我有一个代理,它以RequestBean作为参数,它包含一个list属性,我需要使用SpliteEIP拆分这个list属性 我试过了 <split streaming="true"> <simple>${body}</simple> <process ref="requestHeaderProcessor" /> </split> RequestBean.java RequestBean

我有一个代理,它以RequestBean作为参数,它包含一个list属性,我需要使用SpliteEIP拆分这个list属性

我试过了

    <split streaming="true">
        <simple>${body}</simple>
        <process ref="requestHeaderProcessor" />
    </split>
RequestBean.java

RequestBean {

private String list;

}
处理器未接收单个RequestContent,我希望处理器单独接收RequestContent

尝试打印以下行和

System.out.println(exchange.getIn().getBody().getClass().getName());
并获得java.util.ArrayList。所以它是100%可迭代的

但是,当我打印

System.out.println(exchange.getIn().getBody());
我越来越

[webservice.RequestContent@10128f3, webservice.RequestContent@1277137]
这是所有请求内容的列表

但是,为什么我在bean中看到这个列表,根据拆分定义,交换必须只包含一个RequestContent,因为它是按顺序处理的

我哪里出错了。或者这就是它的工作方式。如何确保它拆分内容


如何实现这一点?

此方法返回的内容就是用于拆分的内容

 <simple>${body.requestBean.requestContent}</simple>

因此,请确保这是一个列表或数组,或者可以进行迭代

非常感谢,我修改了代码以从body中获取List属性,但仍然不起作用。请检查修改后的代码。因为camel cxf将调用参数放入一个列表中,所以您需要像这样获取第一个参数${body[0]}
System.out.println(exchange.getIn().getBody());
[webservice.RequestContent@10128f3, webservice.RequestContent@1277137]
 <simple>${body.requestBean.requestContent}</simple>