我有两个Maven项目。
<?xml version="1.0" encoding="UTF-8"?>
<beans
xmlns="http://java.sun.com/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/beans_1_0.xsd"
>
<?xml version="1.0" encoding="UTF-8"?>
<beans
xmlns="http://java.sun.com/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/beans_1_0.xsd"
>
</beans>
然后将它们包装到单个耳朵中。
在我的ejb项目中,我有一个班级Banana
,在战争项目中,我有一个班级Monkey
。
然后,我尝试在WAS 8.5中运行它,因此它将使用JEE6。
但是,当我尝试@Inject Banana cdiBanana
在Monkey
该类中运行时,它会失败。
它给出了信息
javax.enterprise.inject.UnsatisfiedResolutionException:找不到带有限定
词的Api类型[org.food.Banana]限定词:[@ javax.enterprise.inject.Default()]
当我制作Banana
一个@Stateless
EJB,并给它Monkey
一个@EJB Banana ejbBanana
工作。
为什么不起作用?我应该怎么做或设法使其起作用?
可能与CDI有关:在以下设置中为什么存在不满意的依赖关系??
现在,我将结束这个问题。看来问题出在JEE6规范上。
显然,@ Inject从另一个Ejb-jar中注入一个bean给容器带来了问题。当您使用@EJB时,它可以正常工作。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句