Как запустить несколько потоков в приложении весенней загрузки - PullRequest
0 голосов
/ 16 марта 2020

Я разработал микро-сервис с использованием Spring-Boot, и хочу использовать несколько потоков в слое сервиса и получил некоторые проблемы. Я использую ExecutorService для реализации многопоточной стратегии.

Исключение составляет

Вы ссылаетесь на атрибуты запроса вне фактического веб-запроса или обрабатываете запрос вне первоначально полученного потока? Если вы действительно работаете в веб-запросе и по-прежнему получаете это сообщение, ваш код, вероятно, выполняется за пределами DispatcherServlet / DispatcherPortlet: в этом случае используйте RequestContextListener или RequestContextFilter, чтобы выставить текущий запрос.

Код вызывает проблемы.

  ServletRequestAttributes requestAttributes = (ServletRequestAttributes) 
  RequestContextHolder.currentRequestAttributes();
  HttpSession httpSession = requestAttributes.getRequest().getSession();
  return (UserSession)httpSession.getAttribute(UserSession.USER_SESSION_KEY);

Я пытался добавить contextlistenerclass, как предложено здесь: Как добавить RequestContextListener с конфигурацией no- xml? , но не сработало.

Пожалуйста, дайте несколько советов.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...