вставленная ссылка @EJB пуста после перераспределения - PullRequest
3 голосов
/ 18 марта 2011

У меня есть два ушных приложения (EJB 3.0), развернутых на Jboss 5.1.SLSB из приложения A вызывает удаленную SLSB из приложения B с помощью аннотации @EJB.Все работает нормально, пока я повторно не разверну приложение B. Затем компонент из приложения A пытается вызвать тот из B, и его ссылка становится нулевой.

Я предполагаю, что SLSB объединяются в пул, а ссылки вводятся во время созданияи после повторного развертывания эти прокси не обновляются каким-либо образом.

Как я могу справиться с этим?Можно ли поместить перехватчик в этот компонент и проверить, не являются ли все аннотированные ссылки пустыми?

1 Ответ

1 голос
/ 03 июня 2012

Если приложение повторно развернуто / отменено, или произошел сбой сети, прокси-объекты становятся недействительными.

Вы можете использовать шаблон ServiceLocator для кэширования ссылок удаленных объектов.Вы можете удалить и снова создать их с помощью поиска JNDI в случае сбоя.

Иначе, вместо использования @EJB для внедрения удаленного компонента, вы должны вручную искать каждый раз, что потребляет ресурсы, но первыйгораздо лучший подход.

...