Общие библиотеки OpenLiberty и CDI
OpenLiberty предлагает замечательную функцию общих библиотек, которые могут быть развернуты на сервере один раз, а затем (очень тонкие и быстро перестраиваемые) WAR-ы могут получить к ним доступ во время выполнения. С другой стороны, CDI предоставляет механизм для уменьшения сканирования bean-компонентов, например:
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://xmlns.jcp.org/xml/ns/javaee">
<scan>
<exclude name="com.mycompany.nonecdi.**"/>
</scan>
</beans>
Мои вопросы - как они взаимодействуют:
- Собирается ли сканер Openliberty CDI проверять общие библиотеки на наличие бинов при развертывании WAR, при полном отсутствии ограничений на сканер CDI?
- Могут ли сканеры CDI ссылаться на пакеты из общих библиотек?
1 ответ
Решение
Общие библиотеки поддерживаются в Open Liberty. Если в общих библиотеках заданы аннотации, определяющие bean-компоненты beans.xml (например, @ApplicationScoped и т. Д.), Бины будут обнаружены во время выполнения CDI. Поэтому совместно используемые библиотеки могут использовать CDI в Open Liberty и WebSphere Liberty.