Код инициализации EJB3 - PullRequest
       20

Код инициализации EJB3

3 голосов
/ 01 ноября 2011

Я искал это некоторое время, но не могу найти ответ на это. Как выполнить некоторый код при развертывании JAR-файла EJB3 на сервере JBoss? Например, мне нужно запустить некоторые сценарии миграции sql, прежде чем компоненты будут готовы к использованию.

Ответы [ 2 ]

1 голос
/ 02 февраля 2012

Вы можете создать службу JBoss MBean с помощью Listener, который может выполнять любую инициализацию (сценарии SQL выполняются в вашем случае) после полного запуска JBoss и до использования любого EJB.Я создал такой сервис и мы запускаем его на JBoss 4.2.3.GA, поэтому вам не нужно переходить на JBoss 7.

1 голос
/ 02 ноября 2011

Если вы не можете использовать EJB 3.1 (с @Singleton @Startup), я бы порекомендовал упаковать ваш EJB-модуль в EAR с WAR.Добавьте ServletContextListener в WAR и выполните свое действие в методе contextInitialized.

...