У меня есть три Maven проекта:CDI и веб-фрагменты: не работает без beans.xml
- ядро (packagetype = JAR) с SRC/главная/ресурсы/beans.xml боб-discovery- режим = "примечание"
- webfragment (packagetype = JAR) с SRC/основными/ресурсы/beans.xml бобом открытие режима = "примечание"
- WebProject (packagetype = WAR) с SRC/Основной/WebApp/WEB-INF/beans.xml боба открытие режима = "аннотированный"
Я org.jboss.weld.servlet: приварной сервлета 2.2.9.Final (CDI 1.2) в моем пути к классам и используйте tomcat 7.0.55. Кроме того, я использую Servlet 3, Deltaspike 1.2.1, Mojarra 2.2.10.
Все моих CDI бобы имеют фасоль определения аннотаций (см Meaning of bean discovery mode annotated in CDI 1.1)
Weld предупреждает меня о
servletWeldServlet [WARN] WELD-ENV-001004: Найдено как WEB- INF/beans.xml и WEB-INF/classes/META-INF/beans.xml. Он не переносится для одновременного использования обоих мест. Weld собирается использовать jndi: /localhost/webproject/WEB-INF/beans.xml.
но все отлично работает.
Итак, я удалил все beans.xml, потому что я не нужен им CDI 1,2, но после этого ничего не работает больше: WELD-001408: неявная зависимости ...
Что я пропустил? Это проблема веб-фрагмента?
Да, я знаю. И я импортирую их все из _javax.enterprise. * _. Это похоже на то, что CDI игнорирует веб-фрагмент JARS без beans.xml. – Ginkgochris