Repository.Save () внутри расписания не работает - PullRequest
0 голосов
/ 14 апреля 2020

У меня есть метод repository.save (), вызываемый внутри планировщика. Но это ничего не сохраняет в базу данных. Ниже приведен мой планировщик

@Component
@Transactional
@Slf4j
public class WomConditionActionJob {


@Autowired
private Environment env;

@Autowired
private ECCRepository eCCRepository;

@Autowired
private WOCRepository wOCRepository;

@Autowired
private PSRepository pSRepository;


@Scheduled(fixedDelayString = "${wCATrigger.polling.frequency}", initialDelayString = "${wCATrigger.initial.delay}")
public void execute() {

    try {
            final PauseStatus pause = pSRepository.findByPSName(PSName.PAUSE);
            pauseCondition(pause,threshold);
    } catch (Exception e) {
        log.error("Exception Occured {}", e);
    }

}

private void pauseCondition(final PauseStatus pause, final Integer threshold) {
        WOTCondition wotCId = workOrderConditionRepository.findById(1).get();
        wotCId.setPauseStatus(pause);
        wotCId.setIsUserAction(Boolean.FALSE);
        workOrderConditionRepository.save(wotConditionbyId);
        conditionCount.setErrorCount(0);
        errorConditionCountRepository.save(conditionCount);
    }
}

Я пытаюсь использовать saveAndFlu sh (), но на этот раз я получил следующее сообщение об ошибке

[pool-2-thread -1] | ОШИБКА | [osssTaskUtils $ LoggingErrorHandler.handleError (96)] | В запланированной задаче произошла непредвиденная ошибка. org.springframework.transaction.UnexpectedRollbackException: Откат транзакции, поскольку она была помечена как только для отката в org.springframework.transaction.support.AbstractPlatformTransactionManager.processRollback (AbstractPlatformTransactionManager. * 1014) * 1014 на *. springframework.transaction.support.AbstractPlatformTransactionManager.commit (AbstractPlatformTransactionManager. java: 710)

...