我是mulesoft的新手,已经编写了dataweave,用于迭代orderline项(xml中的product lineitem)。但是,它不起作用,它只插入一个订单行项目(订单行项目-产品行项目)任何指针?
输入
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<order xmlns="http://www.demandware.com/xml/impex/order/2006-10-31" order-no="00001101">
<order-date>2020-07-09T12:55:28.663Z</order-date>
<original-order-no>00001101</original-order-no>
<product-lineitems>
<product-lineitem>
<product-id>65754</product-id>
</product-lineitem>
<product-lineitem>
<product-id>65755</product-id>
</product-lineitem>
</product-lineitems>
</order>
数据编织
%dw 2.0
output application/java
ns ns0 http://www.demandware.com/xml/impex/order/2006-10-31
---
[{
Order_Confirmation_Number__c: payload.ns0#order.ns0#"current-order-no",
"attributes": {
"type": "PBSI__PBSI_Sales_Order__c",
"referenceId": "SO"
},
"PBSI__Sales_Order_Lines__r": {
"records": payload.*ns0#order.ns0#"product-lineitems" map((e,empindex) -> {
"attributes": {
"type": "PBSI__PBSI_Sales_Order_Line__c",
"referenceId": "SOL"
},
"PBSI__Item__c": "a0a1x000001PfWa",
"PBSI__ItemDescription__c": e.ns0#"product-lineitem".ns0#"product-id"
})
}
}]
您需要为多值节点添加*
,即产品线项目
,然后您可以在输出中获得这两个值。详情如下:https://docs.mulesoft.com/mule-runtime/4.3/dataweave-selectors
%dw 2.0
output application/java
ns ns0 http://www.demandware.com/xml/impex/order/2006-10-31
---
[{
Order_Confirmation_Number__c: payload.ns0#order.ns0#"original-order-no",
attributes: {
"type": "PBSI__PBSI_Sales_Order__c",
"referenceId": "SO"
},
PBSI__Sales_Order_Lines__r: {
records: payload.ns0#order.ns0#"product-lineitems".*ns0#"product-lineitem" map((e,empindex) -> {
"attributes": {
"type": "PBSI__PBSI_Sales_Order_Line__c",
"referenceId": "SOL"
},
"PBSI__Item__c": "a0a1x000001PfWa",
"PBSI__ItemDescription__c": e.ns0#"product-id"
})
}
}]
如何在mule dataweave中编写嵌套循环 我有这样的代码, 但它给出的错误,我无法在此添加其他条件。我想在其他部分分配 $ 值
本文向大家介绍dart 对于循环,包括了dart 对于循环的使用技巧和注意事项,需要的朋友参考一下 示例 允许两种类型的for循环: 和: for-in当简单地遍历一个Iterable集合时,该循环很方便。forEach您还可以调用Iterable行为类似于for-in以下对象的方法: 或者,更简洁地说:
我正在迭代JSON数据,获取数据并将其赋值给一个全局变量,当我在循环内打印变量时,我得到了所有数据,然而,当我在循环外打印变量时,我只得到了JSON对象的最后一些数据。我的目标是获取数据并将其作为函数的参数传递。我如何获取循环之外的所有数据?
我试图使用mulesoft上的for-each块在节点Node3a上迭代,但似乎不起作用。你知道我怎样才能做到这一点吗?
我有一个开发项目,使用SpringDataJPA和MapStruct在实体和DTO之间进行映射。上周我决定是时候解决vs问题了,我已经推迟了一段时间。我选择使用和在需要时加载属性。但是,在执行从实体到dto的映射时,我遇到了这个问题。我想我知道这在哪里发生,但我不知道如何通过它。 密码 我已经跟踪了当映射器试图映射角色依赖关系时发生的。对象有 中,这不再有效。 有人知道如何避免异常,同时正确映射我
我有3个实体: 在用户实体中: 角色实体: 和User_info实体 我创建了其余的 API,以通过使用 JPA存储库查找所有用户全部 控制器 尝试运行其余api,结果是重复数据。 {“内容”:[{“id”: 1,“用户名”:“v 7001”,“密码”:“管理员”,“角色”:[{“id”: 1,“角色名称”:“ADMIN”}],“用户信息”:{“id”: 1,“全名”:“”,“名字”:“Jay c