Is there a way to use the FetchFile 1.16.2 processor to access files from Windows when the Nifi application is on Linux?
This is the flow I'm working on, I'm using the UpdateAttribute to enter the path of a Windows network directory to get the .PDF files, but it throws the error below.
I must be doing something wrong or missing some other processor.
Thank you very much for your tip, it worked, but I have some doubts about how to use this GetSmbFile processor.
1 - I need to send a formatted E-mail body for each case and I would be able to do that with the previous processors I was using. How can I do this?
2 - Is there a way for the PDF file to be moved from one directory to another with this processor? I noticed that it manages to delete the file from the directory, but that is not what I wanted, I would like to move it from a send to sent directory for example.
3 - Is it an input-only processor? I can't connect it to any other processor before? Is he the first in the stream?
1 - it accepts no incoming connections, so I'd rather rebuild process around it or used distributed cache services. Try something like this:
2 - process deletes files when Keep Source File property set to "false" (default configuration), to move file combine GetSmbFile (Keep Source File to false) with PutSmbFile.
3 - yep, as mentioned in 1, it's input/flowfile-generative processor, it should stay first in the stream.
You store it into the cache with PutDistributedMapCache processor, you need the property to fetch the file back. DistributedMapCacheClientService controller and DistributedMapCacheServer controller are used with beforementioned processor.
When you need the pdf you use FetchDistributedMapCache and get the flowfile back into the flow.
Ok, I made two sample flows:
the simple one just to put pdf almost straight to email:
And here is the one with caches, if you have a complex process to build email body:
Use default configs for these two controllers, at first it should be enough
Increase entry size accordingly to your max pdf size, for Identifier use either filename or whatever you think does the job:
Use same Identifier to fetch object
I'm trying to make an example with the model you gave me, but when I get to the PutDistributedMapCache processor it gets stuck and doesn't go forward, neither success nor failure.
Am I doing something wrong with the Distributed Cache Service?