![](/img/trans.png)
[英]"Unsatisfied dependencies" with UnsatisfiedResolutionException when trying to inject EJB into another component
[英]@Inject a bean from an EJB project gives UnsatisfiedResolutionException
我有两个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中运行它,所以它将使用JEE 6
但是,当我在Monkey
类中尝试@Inject Banana cdiBanana
时,它失败了。
它给出了信息
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时它工作正常。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.