有没有办法在同一数据流中执行多个GetHTMLElement
?我正在尝试首先执行GetHTMLElement
(选择属性)和执行UpdateAttribute
处理器之后的某些属性
(attrib: ${HTMLElement})
第一部分效果很好,但是当我尝试执行第二部分GetHTMLElement
时,它无法解析flowContent中的任何内容......
我以两种不同的方式执行它们并将它们与MergeContent
合并并工作......但是现在我需要在不同部分执行2 "获取" 一个流程(分裂后)和合并工作......
感谢您的帮助......我已经尝试在Hortonworks社区(https://community.hortonworks.com/questions/131614/multiple-gethtmlelement.html)中提问
答案 0 :(得分:0)
原因是GetHTMLElement
可以将提取的元素放入流文件属性或流文件内容,具体取决于配置的{{1} } 适当的价值。 Destination
有四个可以输出的关系:
在成功关系中,生成的流文件将具有提取元素的内容,或者如果元素放在属性中,无内容。这是因为元素的匹配方式(参见GetHTMLElement#186)。您可以将原始关系路由到第二个GetHTMLElement
处理器以提取元素,但正如您所描述的,您将拥有两个唯一的流文件,每个文件都包含一个元素。
我提交了一个Jira NIFI-4356,通过在目标为 attribute 时将原始内容保留在生成的流文件中来改进对此案例的处理。