Weld Circular正常范围bean的依赖关系

时间:2016-01-25 20:05:56

标签: cdi jboss-weld weld

我正在使用JBoss EAP 6.4(和Weld 1.1.28)并试图摆脱Seam 2.其中一部分是切换到CDI。我得到以下(匿名)错误:

org.jboss.weld.exceptions.DeploymentException: WELD-001443 Pseudo scoped bean
has circular dependencies. Dependency path
[Managed Bean [A] with qualifiers [@Default @Any @Named],
 Managed Bean [B] with qualifiers [@Default @Any],
 Managed Bean [C] with qualifiers [@Default @Any],
 Managed Bean [D] with qualifiers [@Default @Any],
 Managed Bean [C] with qualifiers [@Default @Any]]

然而,其中每一个都是@SessionScoped,所以看起来这应该有效,因为@SessionScoped是一个“正常”范围。为什么这不起作用?

1 个答案:

答案 0 :(得分:1)

CDI的{p> @SessionScopedjavax.enterprise.context.SessionScoped。如果您碰巧使用javax.faces.bean.SessionScoped注释课程,则您的课程不受CDI管理。当您尝试@Inject时,它将@Dependent伪范围。