2010-02-12 7 views
0

Une question concernant les champs d'application des paramètres Seam out.Seam out param avec champ d'application

Supposons que je

@Out(required = false, scope = ScopeType.APPLICATION) 
private GlobalStuff globalStuff= new GlobalStuff(); 

dans un bean session stateful, et un autre bean session stateful avec

@In(required = true) 
private GlobalStuff globalStuff; 

-je obtenir la garantie qu'il y aura seulement 1 instance de l'objet GlobalStuff dans mon application (supposons qu'elle est déployée sur un seul serveur jboss)?

Merci!

Répondre

2

Seam Outjection est identique à setAttribute()
Ainsi, l'instance nommée "globalStuff" sera ajoutée au contexte APPLICATION. Si n'importe quel autre classe/objet essaie d'ajouter par le même nom, il écrase.
Donc oui, il y aura une seule instance avec le même nom.