Ошибка при получении JobOperatorImpl с Thorntail (Wildfly Swarm) и JBeret

Мне нужно получить JobOperatorImpl для работы с программно определенными заданиями в JBeret. Я использую Thorntail в качестве контейнера с зависимостью io.thorntail:batch-jberet.

JobOperatorImpl jobOperator = (JobOperatorImpl) JobOperatorContext.getJobOperatorContext().getJobOperator();

Но я получаю исключение:Caused by: java.lang.ClassCastException: org.wildfly.extension.batch.jberet.deployment.JobOperatorService cannot be cast to org.jberet.operations.JobOperatorImpl

Это работает нормально, когда я использую зависимость JBeret без фракции Thorntail.

2 ответа

Решение

Вы можете привести его к org.jberet.operations.AbstractJobOperator,

Он должен предоставить все методы, необходимые для управления работой.

Я полагаю, что org.wildfly.extension.batch.jberet.deployment.JobOperatorService может быть приведен только к javax.batch.operations.JobOperator а не класс реализации JBeret

Другие вопросы по тегам