Весной 3.1 я мог бы авторизовать ресурс Jax-RS, который имел «@Scope» («запрос») в мои модульные тесты. Я включил следующее BeanFactoryPostProcessor:Весна 3.2: Единичные испытания @Scope («запрос») больше не работают
не@Component
public class MockRequestBeanFactoryPostProcessor implements BeanFactoryPostProcessor {
public void postProcessBeanFactory(
ConfigurableListableBeanFactory beanFactory) throws BeansException {
beanFactory.registerScope("request", new RequestScope());
MockHttpServletRequest request = new MockHttpServletRequest();
ServletRequestAttributes attributes = new ServletRequestAttributes(request);
RequestContextHolder.setRequestAttributes(attributes);
}
}
с весной 3.2, первым методом испытаний, который работает работает, но все последующие методы испытаний получают
java.lang.IllegalStateException: запроса нет поток переплета найдено : Вы имеете в виду запрос атрибутов вне фактического веб-запроса или обработки запроса вне исходного потока? Если вы действительно работаете в веб-запросе и все еще получаете это сообщение, ваш код, вероятно, работает за пределами DispatcherServlet/DispatcherPortlet: в этом случае используйте RequestContextListener или RequestContextFilter, чтобы выставить текущий запрос.
Как я могу снова запустить свои тесты?
Пожалуйста, добавьте свой тестовый класс. –