How to process long running tasks in background?

Hi again,

I have another question I am a bit confused about at the moment.

On a button click I want to start the following process:

  • Doing a SOAP Call
  • Getting a SOAP Response
  • Downloading a ZIP file from an external server
  • Unpacking this ZIP file
  • Combining data with some text and producing a pdf using iText.
  • Push this PDF to User Download

Since this is a longer process I want to do it in a background thread and showing the user a loading bar instead. Can you give me a hint, how to do this?

Best regards,

Bergtroll

Disclaimer: I’m the author of that addon.

Use
VaadinWorker
. Examples for how to do it can be found in the SVN (VaadinWorkerExample or more easily to understand VaadinWorkerTutorialPart1). The actual Tutorial is still under way, I’ve got too much work at the moment. Anyways there are detaled Usage-instructions in the Wiki.