我試圖在使用camel和hibernate的mySQL數據庫中插入json數據。 一切正常。駱駝路由循環無法正常工作
for (Module module : modules) {
from("timer://foo?delay=10000")
.loop(7)//not working
.to(module.getUrl() + "/api/json")
.convertBodyTo(String.class)
.process(new Processor() {
@Override
public void process(Exchange exchange) throws Exception {
int index = (Integer)exchange.getProperty("CamelLoopIndex"); // not working
ObjectMapper mapper = new ObjectMapper();
JsonNode root = mapper.readTree(exchange.getIn().getBody().toString());
String[] lijst = {"lastBuild", "lastCompletedBuild", "lastFailedBuild", "lastStableBuild", "lastSuccessfulBuild", "lastUnstableBuild", "lastUnsuccessfulBuild"};
JSONObject obj = new JSONObject();
JsonNode node = root.get(lijst[index]);
JsonNode build = node.get("number");
obj.put("description", lijst[index]);
obj.put("buildNumber", build);
exchange.getIn().setBody(obj.toString());
}
})
.unmarshal(moduleDetail)
.to("hibernate:be.kdg.teamf.model.ModuleDetail")
.end();
}
當我調試時,我的CamelLoopIndex保持爲0,因此每次它經過循環時都不會遞增。
歡迎所有幫助!
循環,直到去年底'()'。所以我認爲你錯了。 – 2013-05-28 08:45:38
我遇到了和你一樣的問題。看起來循環範圍在第一個to()指令關閉,看起來end()指令沒有意義。我沒有在文檔中找到任何有關它的信息。 –