No thread-bound request found Are you referring to request attributes outside of
问题征象今天发现线上的一个报警,定时任务执行的时候发生了如下报警,哎就希奇了为啥会有这种的报警呢,测试和预发情况都没有问题呀。通过一通排查,终极发现是代码利用的地方有问题,估做一个纪录,克制以后再踩坑。
https://i-blog.csdnimg.cn/blog_migrate/a714a532e2fb8eed175eb71c3ac0877a.png
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 e xpose the current request.
问题原因
首先翻译上面的报错如下:
没有找到与线程绑定的哀求:你是指在实际的web哀求之外引用哀求属性,还是在最初吸收哀求的线程之外处置惩罚哀求?如果你确着实web哀求中操纵,但仍旧收到这个消息,那么你的代码可能在DispatcherServlet之外运行:在这种情况下,利用RequestContextListener或RequestContextFilter来暴露当前哀求。
由于这个错误信息是与Spring框架相关的,通常发生在实验在实际的web哀求之外访问哀求属性,或者在最初吸收哀求的线程之外处置惩罚哀求时。如果你正在处置惩罚一个web哀求但仍旧收到这个错误信息,那么很可能是由于你的代码在DispatcherServlet之外运行。DispatcherServlet负责处置惩罚web哀求并在Spring框架中管理哀求的生命周期。
问题办理:
看到这其实代码也就显而易见了,代码里有一段这个逻辑,通过哀求上下文获取用户信息。这也就是定时任务发起的哀求为啥会报这个错误了。办理就是不能通过Web哀求获取用户信息终于搞明白了。
((ServletRequestAttributes) (RequestContextHolder.currentRequestAttributes())).getRequest()
https://i-blog.csdnimg.cn/blog_migrate/a6e18beedb7ccf9e8fc5fb36fdaaba0b.png
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
页:
[1]