У меня есть тестовый пример Junit, который запускает пакетное задание.Раньше это работало, когда у меня весенняя пакетная версия 2.1.2.Но как только я обновился до версии 4.1.1, я получаю исключение
java.lang.IllegalStateException: Existing transaction detected in JobRepository. Please fix this and try again (e.g. remove @Transactional annotations from client).
Я попытался удалить @Transactional
из тестового класса.Но все равно получаю исключение. Думаю, ошибка связана с двумя транзакциями.Но все же удаление одного не исправило ошибку.
Ниже аннотации, используемые в тестовом классе, и у него есть методы теста, которые вызывают метод, выполняющий пакетное задание.Я использовал Transactional в тестовом классе и тестовый метод, запущенный с помощью SpringJUnit4ClassRunner runner.Я тоже пробовал с SpringRunner.
@RunWith(SpringJUnit4ClassRunner.class) @DirtiesContext
@Transactional
Этот метод будет вызываться из тестового метода.Метод запустил пакетное задание.
@Transactional(propagation = Propagation.NOT_SUPPORTED)
public Long startExportJob(){
Моя весенняя версия ядра - 4.3.18.Нужно ли обновлять до 5?Помоги мне в решении этого.Заранее спасибо.