При разработке приложения Java EE я часто сталкивался с "проблемой", чтобы делать что-то, когда приложение запускается, останавливается и т.д. Теперь для Weblogic существует механизм для этого (слушатель жизненного цикла приложения), Но если вы хотите, чтобы ваше приложение было бесплатным от приложения, которое является приложением. сервер, вам нужно найти другое решение. Некоторые рекомендуют использовать сервлет, который загружается при запуске, и "злоупотреблять" init()
/destroy()
.
Другие говорят, что используйте ServletContextListener
. Для меня последний звучит лучше всего (согласно java doc для ServletContextListener
. К сожалению, сегодня я попробовал JBoss 7, где кажется, что jax-ws webservices инициализируются перед любым другим Servlet
, поэтому перед тем, как ServletContextListener
получит уведомление.
Короче говоря, я просто столкнулся с некоторыми проблемами, связанными с конкретным сервером приложений, - или есть ли какой-либо "более подходящий", стандартизованный способ Java EE для регистрации вещей, делать что-либо до того, как какой-либо веб-сервис, сервлет, какой бы ни был инициализирован?