Apache nifi ApacheNIFI支持循环吗?

Apache nifi ApacheNIFI支持循环吗?,apache-nifi,Apache Nifi,是否有选项在循环中对特定的flowfile内容执行处理器操作 作为一个具体示例,当使用EvaluateXPath时,我想使用以下方法检查每个子元素中的Phone元素的值: /Parent/Childrens/Child[i]/Phone[@Value='111'] 只要处理器支持传入连接,所有关系都可以定向回它们来自的处理器。例如,您可以将“匹配”关系提供回同一处理器,并让它再次评估您要查找的路径。这会一直持续下去,直到表达式的计算结果不再匹配。您的JSON结构是递归的,还是希望迭代单个“子”

是否有选项在循环中对特定的flowfile内容执行处理器操作

作为一个具体示例,当使用
EvaluateXPath
时,我想使用以下方法检查每个子元素中的
Phone
元素的值:

/Parent/Childrens/Child[i]/Phone[@Value='111']

只要处理器支持传入连接,所有关系都可以定向回它们来自的处理器。例如,您可以将“匹配”关系提供回同一处理器,并让它再次评估您要查找的路径。这会一直持续下去,直到表达式的计算结果不再匹配。

您的JSON结构是递归的,还是希望迭代单个“子”数组?如果是后者,SplitJson处理器将为数组中的每个元素创建一个新的流文件,然后您可以使用EvaluateJsonPath获取每个子元素中“Phone”的值,然后使用RouteOnAttribute筛选值为111的元素:


此模板(带有您提供的JSON结构的简单版本)作为Gist()提供。注意,InvokeScriptedProcessor(生成示例JSON文件)需要NiFi 0.5.0+

谢谢mattyb!我从您的示例中学到了很多(特别是关于模板&invokeScriptedProcessor')