#spring #spring-boot
#весна #пружинная загрузка
Вопрос:
У меня есть класс, подобный приведенному ниже
public class GracefulShutdown implements TomcatConnectorCustomizer, ApplicationListener<ContextClosedEvent> {
private static final Logger log = LoggerFactory.getLogger(GracefulShutdown.class);
private volatile Connector connector;
@Override
public void customize(Connector connector) {
this.connector = connector;
}
@Override
public void onApplicationEvent(ContextClosedEvent contextClosedEvent) {
log.info("Protocol handler is shutting down");
.
.
.
.
.
System.exit(exitCode);
}
где ExitCode может быть 0 или 1. Я не получаю этот код выхода в shell Script $ ?.
Пожалуйста, объясните, почему я этого не понимаю.
Заранее спасибо.
Комментарии:
1. Я не знаю, как работает graceful, но я думаю, вам нужно где-то зарегистрировать свой класс или пометить его определенной аннотацией, чтобы graceful знал, что запускать (методы вашего класса), когда contex закрыт, иначе это просто класс, который не используется. Надеюсь, что это поможет
2. @Iman: Верно. мы должны добавить в TomcatServletWebServerFactory.addConnectorCustomizers(gracefulShutdown);