I have a web application, in which i am using ScheduledThreadPoolExecutor to schedule some logic to be executed later (maybe after original web request is over). Is it possible to access/use HttpServletRequest of original request inside child thread (created via "schedule" call on ScheduledThreadPoolExecutor)?
I tried autowiring HttpServletRequest inside class whose function is running in child thread, but got following error (which i understand the reason for)
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/DispatcherPortlet: In this case, use
RequestContextListener or RequestContextFilter to expose the current
request.
Is there any possible way? Can RequestContextFilter be possibly used?