I have a Spring-Batch job that I launch from a Spring MVC controller. The controller gets an uploaded file from the user and the job is supposed to process the file:
If you don't need to show the processing errors to your client, you can start the spring batch job in a seperate thread.