Seeking practical approaches for downloading multiple files

Hi,

I am migrating my Swing app to be a Vaadin V14 application. Things are generally progressing well. I have no previous web experience, so I often miss “obvious” solutions.

My Swing app has many interfaces to other products. One interface is to a Windows desktop application and is one directional, and would simply specify a transfer folder (eg C:\MyTxFolder). We would simply drop files (one XML file plus multiple images) into the specified transfer folder. Nothing more. This is trivial in Swing.

I think I cannot replicate this exact behavior from a web product. (happy if you tell me I can :slight_smile:

I’m sure I have the skills to download single files, perhaps by using plugins such as “File Download Wrapper” by Olli, however that is not feasible when there can be 20+ files.

Question …

Is there a useful approach I can use for a Vaadin 14 application?

Perhaps download multiple files into a “known” location?

Can anyone suggest practical approaches to this?

Any suggestions, advice, ideas would by massively appreciated.

Thanks,
-Damian

No you cannot “drop files into a local folder of the user”, which would be a massive security risk. You have no access to the users C:\MyTxFolder and you shouldn’t try to gain access. Uploading and Downloading is the only way to interact with local files of the user.

Would downloading an extractable .zip file be an acceptable solution?

PS: I can recommend Ollis File Download Wrapper add-on, I use it for all downloads in my apps.

Hi Kaspar … many thanks for your response.

Yes … I always expected that this one interface will be more complicated for the users, where as the other 15+ interfaces which are via web interfaces will be OK.

I do expect that your zip suggestion is the best that can be done. These users are generally “very low tech”, so I am just trying to minimise steps and potential complications and errors. Even getting them to unzip files and move them to a known location will cause some problems.

Many thanks,
-Damian