Позвольте развертыванию уха программно пометить себя как неудачное

Я искал способ программно позволить развертыванию остановить себя.

Для нашего варианта использования мы используем несколько ушей, где одно является наиболее важным, а остальные зависят от него. Мы убедились, что важное ухо развертывается первым, а остальные начинают развертываться параллельно после.

Проблема, с которой мы сталкиваемся, заключается в том, что важное ухо может находиться в режиме обновления, который действителен.

В ушах, которые начинаются позже, мы проверяем режим выполнения, а когда он ненормальный, мы генерируем исключение RuntimeException. Проверка каждого развертывания в ухе происходит в компоненте Singleton Startup EJB3. Но когда они генерируют RuntimeException, развертывание все еще активно. Я хотел бы сообщить контейнеру, что развертывание должно быть помечено как неудачное. Возможно ли что-то подобное?

Технологии, которые мы используем: Wildfly 10, Java-ee 7, EJB3.

Я нашел решение для stackru, которое использует командную строку CLI, чтобы остановить развертывание. Может ли развертывание остановить себя? Мне кажется, что это должно быть возможно сделать в самом исходном коде.

Какие-нибудь мысли?

1 ответ

Мне кажется логичным, что развертывание не может остановить себя. Если это возможно, то где приложение должно сообщить, что оно успешно развернуто? Для приложения, которое больше не существует? Опция использования CLI выглядит для меня как лучший обходной путь, который у вас есть.

На заметку: почему вы используете несколько EAR? EAR может содержать несколько WAR и EJB, поэтому нет необходимости иметь несколько правильных EAR. Кроме того, почти все проекты могут быть выполнены с простой WAR, я не использовал EAR годами.

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