Ответ 1
Зависит от того, кто управляет bean.
Если он JSF через @ManagedBean
, то по умолчанию он равен @RequestScoped
, как указано в javadoc:
Если аннотации области охвата опущены, bean должен обрабатываться так, как будто присутствует аннотация
RequestScoped
Если он CDI через @Named
, то по умолчанию он @Dependent
, как указано в Документация по сварке:
Наконец, CDI имеет так называемый зависимый псевдообзор. Это область по умолчанию для bean, которая явно не объявляет тип области.
Эффект заключается в том, что экземпляр bean создается на каждом отдельном элементе EL. Итак, представьте форму входа в систему с двумя полями ввода, ссылающимися на свойство bean и командную кнопку, ссылающуюся на действие bean, таким образом, в общей сложности три EL-выражения, тогда эффективно будут созданы три экземпляра. Один с именем пользователя, одним из которых является набор паролей и один, на котором вызывается действие. В эффектах это ведет себя так же, как JSF @NoneScoped
. Это подтверждает симптомы, которые вы видите.
Если он Spring через @Component
, то по умолчанию он равен @Scope("singleton")
, как указано в javadoc:
По умолчанию:
"singleton"
В эффектах это ведет себя так же, как JSF @ApplicationScoped
и CDI @ApplicationScoped
.
Netbeans не имеет к этому никакого отношения. Это просто инструмент редактирования, например блокнот, но с более чем 1000 дополнительными функциями.