Вы можете использовать, RequestContextHolder (класс Holder для предоставления веб-запроса в форме объекта RequestAttributes с привязкой к потоку.), Чтобы сделать прокси-бины области сеанса доступными для дочерних потоков.
Определите пользовательский перехватчик ExecuteAndWait и в методе doIntercept используйте следующий статический метод из RequestContextHolder
public static void setRequestAttributes (атрибуты RequestAttributes, логическое наследуемое )
Свяжите данные атрибуты RequestAttributes с текущим потоком.
Параметры:
атрибуты - RequestAttributes, чтобы выставить, или нуль, чтобы сбросить связанный с потоком контекст
наследуемый - предоставлять ли атрибуты RequestAttributes как наследуемые для дочерних потоков (с использованием InheritableThreadLocal)
Пример кода
public class CustomExecuteAndWaitInterceptor extends ExecuteAndWaitInterceptor {
@Override
protected String doIntercept(ActionInvocation actionInvocation) throws Exception {
RequestAttributes requestAtteiAttributes = RequestContextHolder.getRequestAttributes(); //Return the RequestAttributes currently bound to the thread.
RequestContextHolder.setRequestAttributes(requestAtteiAttributes, true);
//do something else if you want ..
return super.doIntercept(actionInvocation);
}
}