«Стандартизованный» способ управления жизненным циклом приложения Java EE

При разработке приложения Java EE я часто сталкивался с «проблемой», что делать что-то при запуске, остановке приложения и т. д. Теперь для Weblogic, например, есть механизм для этого (прослушиватель жизненного цикла приложения). Но если вы хотите, чтобы в вашем приложении не было материалов, специфичных для сервера приложения, вам нужно найти другое решение. Некоторые рекомендуют использовать сервлет, который загружается при запуске, и "злоупотребляют" init () / destroy () .

Другие говорят, что используют ServletContextListener . Для меня последний вариант звучит лучше всего (согласно java-документации для ServletContextListener . К сожалению, сегодня я попробовал JBoss 7, где кажется, что веб-службы jax-ws инициализируются перед любым другим сервлетом , таким образом, до того, как ServletContextListener получит уведомление.

Короче говоря, я просто столкнулся с некоторым сервером приложений проблемы здесь - или есть какой-либо «более подходящий» стандартизованный способ Java EE для регистрации и выполнения каких-либо действий перед инициализацией какого-либо веб-сервиса, сервлета или чего-либо еще?

10
задан Arjan Tijms 2 March 2013 в 23:56
поделиться