2016-01-25 3 views
0

J'utilise JBoss EAP 6.4 (et Weld 1.1.28) et j'essaie de me débarrasser de Seam 2. Une partie de cela est le passage au CDI. Je reçois le texte suivant (anonymisées) Erreur:Weld Circular Dépendance des haricots normaux

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]] 

Chacun d'entre eux est @SessionScoped, cependant, il semble que cela devrait fonctionner depuis @SessionScoped est un champ « normal ». Pourquoi ça ne marche pas?

+1

'javax.enterprise.context.SessionScoped'? – Geinmachi

+0

D'oh! Oui, j'avais importé de javax.faces.bean. Mettez cela comme réponse et je vais vérifier. –

Répondre

1

@SessionScoped pour CDI est javax.enterprise.context.SessionScoped. S'il vous arrive d'annoter la classe avec javax.faces.bean.SessionScoped alors votre classe n'est pas gérée par CDI. Lorsque vous essayez de @Inject alors il sera @Dependent pseudo-portée.