在我的NiFi工作流程中,我配置了 getMongo 处理器以及查询属性。
我的查询工作正常,我正在从Ni-Fi的MongoDB中获取响应,如下所示
{ "_id" : { "$oid" : "5dcadc91f027705b1834d6c5" }, "empId" : "333-44-6J", "accountId" : "444434D2", "fulltimeEmployee" : "true", "DateJoined" : "07/14/2016 11:37:42", "Bloddgroup" : "null" }
我想路由 DateJoined,Bloodgroup 等字段进行进一步处理。
一旦我们在 getMongo 处理器中获得响应,我将如何访问这些字段。
我厌倦了使用 RouteonAttribute 和 UpdateAttribute 之类的处理器,并尝试使用“ $ {DateJoined}”访问 DateJoined 。但是我得到的是空值。
答案 0 :(得分:1)
使用EvaluateJsonPath并将动态属性DateJoined
设置为$.DateJoined
,并将Bloodgroup
设置为$.Bloodgroup
。这会将这些json属性提取到FlowFile属性中,并允许您像使用表达式语言一样{${Bloodgroup}
和${DateJoined}
)来解决它们
答案 1 :(得分:1)
只能使用$ Symbol来访问属性,因为数据库记录不是属性,因此您需要使用Ben提到的 EvaluateJsonPath 处理器,然后使用 $ {DateJoined}获取属性