2010-12-29 1 views
1

Я хотел бы использовать несколько экземпляров одного и того же Именованного компонента CDI на странице JSF2. (Представьте, что у меня есть поддерживающий компонент для доступа к категории contentmanager, но я хочу показать несколько категорий на той же странице JSF). Интересно, как я могу «переопределить» имя по умолчанию @Named аннотации, чтобы у меня были эти 3 o 4 экземпляра на моей странице. (¿Вспомните старый тег useBean JSP, чтобы использовать компонент на странице ... вы могли бы использовать несколько экземпляров одного и того же класса) Я ищу о beans.xml, но не нахожу его. Могу ли я использовать запись «managed bean» old faces-context.xml? Не знаю, будет ли это применяться к CDI @Named bean или может использоваться только для старых управляемых bei-файлов, отличных от CDI.Повторное использование нескольких экземпляров CDI @Named для одного и того же класса на странице JSF

спасибо за любую информацию, Игнасио

ответ

2

Вы можете просто сделать свой bean @Dependent (или удалить аннотацию существующего объекта), и до тех пор, пока вы не будете использовать бит дважды в одном выражении EL, вы получите новые базовые экземпляры.

0

Вы не можете иметь более одного экземпляра компонента в данной области. Так, например, в одном запросе вы не можете иметь два экземпляра компонента с запросом. В этом суть областей.

Так что, я думаю, вам не нужно было управлять вашими бобами вообще. Просто поместите их в качестве атрибутов запроса и получите доступ к ним через EL.

+0

Я поддержал «включенную» множественную функциональность в управляемом компоненте CDI для тиражирования разных экземпляров. Я хочу использовать аннотацию CDI и @named, но надеялся, что старый способ включения нескольких компонентов, используемых в JSP-страницах, может быть воспроизведен аналогичным образом. спасибо за Ваш ответ. – icordoba