【发布时间】:2018-07-02 18:26:39
【问题描述】:
Apache Nifi ReplaceText 处理器的行为不符合我的预期。我不明白为什么表达式求值会在数据应该去的地方插入零长度的字符串。
ReplaceText 处理器的配置是:
替换策略是:始终替换。
评估模式是:整个文本。
处理器链为:QueryDatabaseTable->SplitAvro->UpdateAttribute->ReplaceText->PutSQL
ReplaceText 处理器中的替换值为:
INSERT INTO public.journal (payee, amount, billed_date, paid_date)
VALUES ('${payee}', ${amount}, '${billed_date}', '${paid_date}');
它应该变成……。
INSERT INTO public.journal (payee, amount, billed_date, paid_date)
VALUES ('Dead End LLC', 2000.000, ‘2018-02-01’, ‘2018-02-01’);
相反,我得到:
INSERT INTO public.journal (payee, amount, billed_date, paid_date)
VALUES (‘’, , ‘’, ‘’);
当我查看前面的 UpdateAttribute 处理器步骤的输出时,尤其令人沮丧的是……
[ {
"payee" : "Dead End LLC",
"amount" : "2000.00",
"billed_date" : "2018-02-01",
"paid_date" : "2018-02-02"
} ]
这让我大吃一惊,因为表达式处理似乎工作得很好,但没有提取正确的数据(我的幼稚实现假设会在那里。)
以前的阅读让我走到了现在:
【问题讨论】:
标签: apache-nifi