我正在使用Bindy和Camel来处理CSV文件。
下面的代码get a list of beans from The csv运行良好。
from("ftp://blabla.com:21/InPut?password=bla&move=done&sortBy=file:name")
.unmarshal(bindy)
.process(new Processor() {
public void process(Exchange exchange) throws Exception {
Message in = exchange.getIn();
Map<String, Object> modelMap = (Map<String, Object>) in.getBody();
System.out.println(modelMap.size());
int i = 0;
}
});但是当我尝试这样做的时候:
from("ftp://blabla.com/InPut?password=bla&move=done&sortBy=file:name")
.unmarshal(bindy)
.split(body())
.process(new Processor() {
public void process(Exchange exchange) throws Exception {
Message in = exchange.getIn();
ArrayList<HashMap<String, Object>> list = (ArrayList<HashMap<String, Object>>) in.getBody();
System.out.println(list.size());
int i = 0;
}
});拆分的答案是空的,没有什么需要处理的。
你知道为什么会发生这种情况吗?
感谢并致以问候
吉尔斯
*解决方案*感谢您的反馈。如果第一种情况运行良好,让我获得一个映射列表,对于第二种情况,我必须首先逐行处理它,然后解组。在本例中,主体包含POJO。
下面的代码可以工作:
.split(body().tokenize("\n"))
.unmarshal(bindy)
.process(new Processor() {
public void process(Exchange exchange) throws Exception {
Message in = exchange.getIn();
Employee emp = (Employee) in.getBody();
System.out.println(emp);
}
});谢谢你的帮助
吉尔斯
发布于 2017-04-07 14:02:48
感谢您的反馈。如果第一种情况运行良好,让我获得一个映射列表,对于第二种情况,我必须首先逐行处理它,然后解组。在本例中,主体包含POJO。
下面的代码可以工作:
.split(body().tokenize("\n"))
.unmarshal(bindy)
.process(new Processor() {
public void process(Exchange exchange) throws Exception {
Message in = exchange.getIn();
Employee emp = (Employee) in.getBody();
System.out.println(emp);
}
});谢谢你的帮助
https://stackoverflow.com/questions/43199676
复制相似问题