我正在尝试在我的骡子流中为每个"(众多中的一个(做一个嵌套的"对于每个人"。(生成的 JAXB 对象层次结构为人口->人口->人->关系-关系(但是,似乎我希望在第二个"对于每个"中找到的对象不存在,消息说有效载荷是整数类型?那是"计数器"吗?如何在第二个循环中访问嵌套的"关系"集合?
<foreach collection="#[payload.getPopulations().getPopulationpost()]" doc:name="For Each"> <logger.... /> <db:insert> ..... </db:insert> <foreach collection="#[payload.getPersonpost().getRelations().getRelation()]" doc:name="For Each"> <logger ..../> </foreach> </foreach>
问候
*****编辑******我实际上认为问题是在我的第一个"For Each"之后,我的有效载荷由数据库中插入的记录数组成。我通过在进入第一个循环之前将有效负载设置为"originalPayload"变量来解决它,然后我选择在第二个"for Each"中遍历该变量。
使用counterVariableName
变量来保持当前迭代,如果你嵌套两个 foreach 会有冲突,请尝试这样的事情:
<foreach collection="#[payload.getPopulations().getPopulationpost()]" doc:name="For Each">
<logger.... />
<db:insert>
.....
</db:insert>
<foreach collection="#[payload.getPersonpost().getRelations().getRelation()]" counterVariableName="nestedCounter" doc:name="For Each">
<logger ..../>
</foreach>
</foreach>