将 NiFi 属性 设置为空
Setting a NiFi property to null
我想创建一个 属性 并将其设置为另一个 属性 的值,只要另一个 属性 存在即可。
我尝试使用如下配置的 UpdateAttribute 进程来实现此目的:
Property Value
A ${"B":isNull():ifElse(null, ${"B"})}
但是语法检查器在行尾给出了一个红色花括号(我试过 null、Null、NULL)。
如果我 运行 无论如何,我都会收到处理器异常 - 由于意外标记 'null'.
而无法计算表达式
我开始认为这不仅仅是要找到表示 null 的正确标记。是因为属性不能设置为空吗?如果是这样,解决这个问题的最佳方法是什么?
我使用规则实现了我想要的。
条件:${"B":notNull()}
操作:属性 A,值 ${"B"}
由于我有几个属性,我想使用此规则进行调节,并且我希望所有结果都在同一个输出 FlowFile 中,我 select FlowFilePolicy 到 'use original'
我通过设置 UpdateAttribute 处理器“删除属性表达式”实现了这一点 属性:
${B:isEmpty():ifElse('B','')}
我想创建一个 属性 并将其设置为另一个 属性 的值,只要另一个 属性 存在即可。
我尝试使用如下配置的 UpdateAttribute 进程来实现此目的:
Property Value
A ${"B":isNull():ifElse(null, ${"B"})}
但是语法检查器在行尾给出了一个红色花括号(我试过 null、Null、NULL)。 如果我 运行 无论如何,我都会收到处理器异常 - 由于意外标记 'null'.
而无法计算表达式我开始认为这不仅仅是要找到表示 null 的正确标记。是因为属性不能设置为空吗?如果是这样,解决这个问题的最佳方法是什么?
我使用规则实现了我想要的。 条件:${"B":notNull()} 操作:属性 A,值 ${"B"}
由于我有几个属性,我想使用此规则进行调节,并且我希望所有结果都在同一个输出 FlowFile 中,我 select FlowFilePolicy 到 'use original'
我通过设置 UpdateAttribute 处理器“删除属性表达式”实现了这一点 属性: ${B:isEmpty():ifElse('B','')}