Одна идея (но могут быть и другие) - реализовать сервлет, который будет выполнять эту проверку и завершать работу, когда условие ложно. Вам необходимо запустить его в начале развертывания контекста с соответствующим тегом load-on-startup . web.xml
будет выглядеть следующим образом:
<servlet>
<display-name>startup condition servlet</display-name>
<servlet-name>startup condition</servlet-name>
<servlet-class>com.xxx.yyy.ConditionChecker</servlet-class>
<load-on-startup>1</load-on-startup>
<init-param>
<param-name>FILE_TO_CHECK</param-name>
<param-value>/tmp/dummy</param-value>
</init-param>
</servlet>
Этот сервлет может выполнить System.exit(1)
, если условие не выполняется (/ tmp / dummy не существует).
Пожалуйста, не это убьет Tomcat. Не совсем остановить процесс развертывания. Если кто-то захочет настроить это, вы можете отредактировать мой пост.