Как предотвратить весеннее пакетное отключение приложения при сбое задания, запущенного с контроллера? - PullRequest
0 голосов
/ 22 февраля 2019

У меня есть весеннее пакетное задание, которое я запускаю синхронно с контроллера, используя следующий код:

SimpleJobLauncher jobLauncher = new SimpleJobLauncher();
jobLauncher.setJobRepository(jobRepository.getObject());
jobLauncher.setTaskExecutor(new SyncTaskExecutor());
jobLauncher.run(convertFileJob, new JobParametersBuilder().addDate("date", new Date()).toJobParameters());

При сбое задания все приложение закрывается.

INFO 7 --- [Thread-22] o.s.i.endpoint.EventDrivenConsumer       : Removing {logging-channel-adapter:_org.springframework.integration.errorLogger} as a subscriber to the 'errorChannel' channel
INFO 7 --- [Thread-22] o.s.i.channel.PublishSubscribeChannel    : Channel 'application.errorChannel' has 0 subscriber(s).
INFO 7 --- [Thread-22] o.s.i.endpoint.EventDrivenConsumer       : stopped _org.springframework.integration.errorLogger
INFO 7 --- [Thread-22] o.s.s.c.ThreadPoolTaskScheduler          : Shutting down ExecutorService 'taskScheduler'
INFO 7 --- [Thread-22] o.s.s.concurrent.ThreadPoolTaskExecutor  : Shutting down ExecutorService 'applicationTaskExecutor'
INFO 7 --- [Thread-22] o.e.jetty.server.AbstractConnector       : Stopped ServerConnector@29be997f{HTTP/1.1,[http/1.1]}{0.0.0.0:8080}
INFO 7 --- [Thread-22] org.eclipse.jetty.server.session         : node0 Stopped scavenging
INFO 7 --- [Thread-22] o.e.j.s.h.ContextHandler.application     : Destroying Spring FrameworkServlet 'dispatcherServlet'
INFO 7 --- [Thread-22] o.e.jetty.server.handler.ContextHandler  : Stopped o.s.b.w.e.j.JettyEmbeddedWebAppContext@3ab6678b{application,/,[file:///tmp/jetty-docbase.3907062630090555365.8080/],UNAVAILABLE}

Какя могу предотвратить это поведение?

Спасибо!

1 Ответ

0 голосов
/ 22 февраля 2019

Это была моя ошибка, я запустил отладчик и обнаружил, что в используемой нами библиотеке вызывается System.exit(-1).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...