ли получить доступ к сессии в контроллерах Spring MVC просто с @Autowired
как это:Доступ к HttpSession в ClientHttpRequestInterceptor в Spring MVC
@Autowired
private HttpSession session;
Проблема заключается в том, я теперь доступ к сеансу в ClientHttpRequestInterceptor
.
Я попробовал его с RequestContextHolder.getRequestAttributes()
, но результат (иногда - и это настоящая проблема) null
. Я пробовал также с RequestContextHolder.currentRequestAttributes()
но чем IllegalStateException
брошено со следующим сообщением:
запрос Нет потока переплете не найдено: Вы имеете в виду атрибуты запроса за пределами фактического веб-запроса, или обработки запроса снаружи из изначально получающий поток? Если вы действительно работаете в веб-запросе и все еще получаете это сообщение, ваш код, вероятно, работает за пределами DispatcherServlet/DispatcherPortlet: в этом случае используйте RequestContextListener или RequestContextFilter, чтобы выставить текущий запрос.
RequestContextListener
зарегистрирован в web.xml
.
<listener>
<listener-class>org.springframework.web.context.request.RequestContextListener</listener-class>
</listener>
Та же проблема, когда я впрыснуть сессию в ClientHttpRequestInterceptor
непосредственно.
@Autowired
private HttpSession session;
Мой вопрос: как я могу получить доступ в ClientHttpRequestInterceptor
тока HttpSession
?
Спасибо!
Можете ли вы предоставить ваш ClientHttpRequestInterceptor полного класса? – developer