我在尝试从 Apache NiFi 中的 joltTransform 处理器构造输出 JSON 时遇到问题。我需要从 idByLine 数组中提取值并将它们与 orderLine 数组中的值进行匹配。这是我输入 JSON 的简化版本:
"orderLine": [
"ID": "1"
},
"ID": "2"
}
],
"idByLine": [
{
"idLine": "1",
"orderId": "AMD123"
},
{
"idLine": "2",
"orderId": "AMD555"
}
]
}
我的目标是创建以下输出对象:
[ {
"idLine" : "AMD123"
}, {
"idLine" : "AMD555"
} ]
我正在努力设计正确的 JOLT 规范来实现这一目标。有人可以帮助我制定适当的 JOLT 规范来生成所需的输出吗?
您可以尝试以下规格:
[
{
"operation": "shift",
"spec": {
"*": {
"*": {
"ID": {
"@": "@(0).&1"
},
"idLine": {
"@(1,orderId)": "@(0).&1"
}
}
}
}
},
{
"operation": "shift",
"spec": {
"*": {
"ID": {
"@(1,idLine)": "[].idLine"
}
}
}
}
]