Long Ngo
Long Ngo

Reputation: 3

How to deal with thread in background processing java spring boot?

I want to download file after query but the time is too long, so my company said I should let the process in background.

For that I create thread when user call method, it will generate file and send to email of customer.

But the problem is about my thread, I also test function for sendemaildownload (it also includes the function which I use to query), I'm quite sure this problem from the way I create the thread.

This is what it says to me when I'm logging the error on creating the thread:

Exception in thread "Nathan-Transportation1" java.lang.IllegalStateException: No thread-bound request found: Are you referring to request attributes outside of an actual web request, or processing a request outside of the originally receiving thread? If you are actually operating within a web request and still receive this message, your code is probably running outside of DispatcherServlet: In this case, use RequestContextListener or RequestContextFilter to expose the current request.

Is there any way to fix it? I want to understand why it happend when I create my thread pool.

enter image description here

Upvotes: 0

Views: 883

Answers (1)

Hassan Golshani
Hassan Golshani

Reputation: 139

Try using @Async annotation. For more information see here

Upvotes: 0

Related Questions