Как управлять жизненным циклом JCA ManagedConnectionFactory? - PullRequest
0 голосов
/ 05 августа 2011

Я развертываю файл rar, помещая его в папку развертывания в jboss как 7. Позже развертываю мой war-файл.

Этот соединитель по определению связан с расположением JNDI внутри standalone.xml.

Когда он развернут, по умолчанию выполняется createConnectionFactory (см. ConnectionManager).

Я занимаюсь домашним хозяйством в этом методе с помощью загрузчика классов

ClassLoader contextClassLoader = Thread.currentThread (). getContextClassLoader ();

Метод createConnectionFactory (ConnectionManager cm) снова выполняется, когда я пытаюсь получить доступ к адаптеру с помощью ejb

Проблема изначально возникла во времяразвертывание contextClassLoader является нулем.Позже он имеет значение при вызове из ejb.По сути, моя домашняя работа не удалась.

Вопрос:

  1. createConnectionFactory (ConnectionManager cm) выполняется во время развертывания => это правильное поведение?

  2. Как настроить, чтобы ironJacamar / jboss не выполнял этот метод во время развертывания?

Другая информация: Jboss As7, NetBeans7, Jdk1.7

Редактировать: вышеуказанное поведение является правильным.Адаптер, который я использую, требует, чтобы загрузчик классов, используемый во время развертывания, был таким же, как используемый во время выполнения.По умолчанию он использует Thread.currentThread (). GetContextClassLoader ().Я изменил его, чтобы использовать ClassLoader cl = MyManagedConnectionFactory.class.getClassLoader ();

1 Ответ

1 голос
/ 05 августа 2011

createConnectionFactory (ConnectionManager cm) выполняется во время развертывания => это правильное поведение?

Если у вас есть определение ConnectionFactory, то я ожидаю увидеть этот метод с именемпоскольку контейнер создает и связывает определение ConnectionFactory в пространстве имен JNDI - тот факт, что вы получаете вызов с использованием ConnectionManager, показывает, что это выполняется в управляемом сценарии.

Глава шестая спецификации JCA описывает эту область адаптера ресурсов во многих деталях, поэтому я бы подумал, что здесь есть однозначный ответ.редактировать: глава 17 также, вероятно, актуальна.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...