我有一个Nifi Groovy脚本。将字段分配给nifi属性,但如果json值则定义为null 为空。如果json值为空,我希望将属性定义为空。
空属性如下所示;
我这样想;
这是我使用的脚本,
import org.apache.commons.io.IOUtils
import java.nio.charset.*
def flowFile = session.get();
if (flowFile == null) {
return;
}
def slurper = new groovy.json.JsonSlurper()
def attrs = [:] as Map<String,String>
session.read(flowFile,
{ inputStream ->
def text = IOUtils.toString(inputStream, StandardCharsets.UTF_8)
def obj = slurper.parseText(text)
obj.each {k,v ->
attrs[k] = v.toString()
}
} as InputStreamCallback)
flowFile = session.putAllAttributes(flowFile, attrs)
session.transfer(flowFile, REL_SUCCESS)
2条答案
按热度按时间cgfeq70w1#
klr1opcd2#
这是我解决了它;