2010-02-12 5 views
0

Вопрос, касающийся областей параметров парашюта.Параметр шва с областью применения

Пусть у меня есть

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

в сессионном компоненте, а другой сессионный компонент с

@In(required = true) 
private GlobalStuff globalStuff; 

Может ли я получить гарантию того, что там будет только один экземпляр объекта GlobalStuff в мое приложение (предположим, что оно развернуто на одном сервере jboss)?

Спасибо!

ответ

2

Seam Outjection такой же, как setAttribute()
Поэтому он добавит экземпляр с именем «globalStuff» в контекст APPLICATION. Если какой-либо другой класс/объект пытается добавить с тем же именем, он перезапишет.
Итак, есть только один экземпляр с тем же именем.