在Nifi中访问数组值

时间:2016-03-27 07:42:13

标签: apache-nifi

我有一个类似于

的json数组
{
[
 {
    "name": "ABCDEF",
    "details": {
        "code": null,
        "description": null,
        "range": {
            "fromNo": "00174",
            "toNo": "99999"
        }
    }
}, {
    "name": "ABCDEF",
    "details": {
        "code": null,
        "description": null,
        "range": {
            "fromSerialNo": "00001",
            "toSerialNo": "00060"
        }

},{         “名字”:“ABCDEF”,         “细节”: {             “code”:null,             “description”:null,             “范围”: {                 “fromSerialNo”:“00061”,                 “toSerialNo”:“00173”         }     }] }

我希望输出为 {         “名字”:“ABCDEF”,         “细节”: {             “code”:null,             “description”:null,             “范围”: {                 “fromSerialNo”:“00001”,                 “toSerialNo”:“99999”

}

但问题是我无法将变量放在EvaluateJsonPath中,因为它不接受nifi表达式语言。我必须循环遍历所有值,然后获得最终范围。有谁知道这是否可以在nifi中完成。

1 个答案:

答案 0 :(得分:3)

使用开箱即用的处理器目前还没有简单的方法可以做到这一点,但NiFi的设计很容易扩展。您需要编写自定义Java处理器或脚本来解决此问题。

有关为NiFi编写自定义Java处理器的简介教程,请查看以下链接:http://www.nifi.rocks/developing-a-custom-apache-nifi-processor-json/

从版本0.5.0开始,有ExecuteScript和InvokeScripted处理器。处理器的创建者在这里写了许多博客:http://funnifi.blogspot.com/

相关问题