java - 我如何循环json并在camelcontext中发布每个索引
问题描述
假设我有以下CamelContext:
<camelContext id="camelId" xmlns="http://camel.apache.org/schema/spring">
<route id="upsertItem">
<from uri="cxf:bean:someEndpoint" />
<process ref="someTransformer" />
<log message="$someJson"/>
</route>
</camelContext>
$someJson包含以下 json:
{
"0":{
"title":"hello world",
"description":"a greeting to the world"
},
"1":{
"title":"goodbye world",
"description":"a goodbye to the world"
}
//might have more indexes
}
我想编辑我的CamelContext以便它可以将每个索引发布到端点。问题是我不知道如何遍历 JSON。
所以我想要一些看起来像这样的东西:
<loop src="${someJson[index]}">
<to uri="http://bookstore/api/books"/>
</loop>
解决方案
可以通过拆分原始消息来完成
<split>
<jsonpath>$[*]</jsonpath>
<log message="${body}"/>
</split>
推荐阅读
- r - 并行计算,在 dplyr 中哪个替代 tidyr::complete?
- c - 为什么 C 允许从 const 隐式转换为非常量指针
- reactjs - 将 React 表单与数据库连接起来
- amazon-web-services - 如何在 aws codebuild 中访问多级存储库
- google-chrome-extension - 使用 CJS chrome 扩展时,jQuery text() 函数在 Twitter 上不起作用
- testing - django rest框架测试代码self.client.delete问题
- php - Why pagination shows all the records of the table on every page?
- c# - 如何使用 SpotifyAPI-NET 获取当前正在播放的歌曲
- python - 为什么我会在按钮按下事件中获得鼠标位置的小数值?
- c# - 如何在 api 调用列表中加快或提高效率?