Support Questions
Find answers, ask questions, and share your expertise

How to merge serveral flowfiles based on attribute

How to merge serveral flowfiles based on attribute

New Contributor



I have a pdf that I'm converting to images and processing those images to extract data. Once the data is extracted I need to get the original flowfile to continue working on the pdf.


1 flowfile with pdf proces several child flowfiles with images


I'm adding fragment.index, fragment.count, and fragment.identifier to the flowfiles and I thought MergeContent processor might have been a good idea however I got this error:


2020-10-03 19:50:15,438 ERROR [Timer-Driven Process Thread-3] o.a.n.p.groovyx.ExecuteGroovyScript ExecuteGroovyScript[id=01741006-0405-166e-9b38-ecabf8276528] Error converting to images: groovy.lang.MissingMethodException: No signature of method: org.apache.nifi.processors.groovyx.flow.GroovyProcessSessionWrap.putAttribute() is applicable for argument types: (org.apache.nifi.processors.groovyx.flow.GroovySessionFile, String...) values: [WRAP[StandardFlowFileRecord[uuid=7105bfe9-4095-4e18-b28c-758d8107d804,claim=StandardContentClaim [resourceClaim=StandardResourceClaim[id=1601769012866-29, container=default, section=29], offset=197836, length=49459],offset=0,name=IWithSeparator-0page-1.png,size=49459]], ...]

 What am I doing wrong? How can I continue working on the original flowfile based on the image output?