如何使用CDI将@Alternative与CDI一起注入JAR模块

时间:2014-08-22 12:54:32

标签: java-ee-6 cdi ejb-3.1 jpa-2.1

TheConverter想要使用Config生成的注入ConfigProducer。 其中ConfigProducer位于WAR中,但TheConverterConfig位于jar中。 可悲的是,似乎config没有注入导致由javax.ejb.EJBException: javax.persistence.PersistenceException: Error attempting to apply AttributeConverter中的NullPointerException引起的TheConverter

我正在使用WildFly 8.1.0,它使用Weld进行CDI注入。

我试图做一些不可能的事情,或者这是否有效?

example.war
  - ConfigProducer.class
      @Produces Config
  - WEB-INF/beans.xml (empty <beans></beans>)
  - META-INF/persistence.xml
  - WEB-INF/lib/entities.jar
     - Config.class
     - TheConverter.class
         implements AttributeConverter
         @Inject Config <-- FAIL
     - TheEntity.class
     - META-INF/beans.xml (empty <beans></beans>)
     - META-INF/orm.xml

2 个答案:

答案 0 :(得分:0)

我不知道你的问题到底是什么。但最终可以使用这种生产者和注射点组合。

如果在bean发现期间出现问题,WildFly也会警告你......

可能你可以添加一些关于beans.xml,Producer类和persistence.xml的更多解释。

答案 1 :(得分:0)

您的WAR文件中的beans.xml需要WEB-INF,而不是META-INF