2010-12-29 4 views
1

JSF2 페이지에서 동일한 CDI Named Bean의 여러 인스턴스를 사용하고 싶습니다. (contentmanager 카테고리에 액세스 할 백킹 빈을 가지고 있다고 가정하지만 동일한 JSF 페이지에 여러 카테고리를 표시하고 싶습니다.) @Named 어노테이션의 기본 이름을 어떻게 "오버라이드"하여 해당 3 개의 인스턴스를 가질 수 있는지 궁금합니다 내 페이지에. (¿ 페이지에서 빈을 사용하기 위해 오래된 JSP "useBean"태그를 기억하고 ... 같은 방법으로 여러 개의 인스턴스를 사용할 수 있습니다.) beans.xml을 검색했지만 찾지 못했습니다. 이전 faces-context.xml "managed bean"항목을 사용할 수 있습니까? CDI @Named bean에 적용되는지 또는 이전의 비 CDI 관리 Bean에만 사용할 수 있는지 여부를 모릅니다. 어떤 정보를JSF 페이지에서 동일한 클래스의 여러 CDI @ Named Bean 인스턴스 재사용

덕분에, 이그나시오

답변

2

빈을 @Dependent (또는 기존 스코프 주석을 제거) 할 수 있으며 동일한 EL 표현식에서 빈을 두 번 사용하지 않는 한 새로운 기본 인스턴스가 생성됩니다.

0

당신은 주어진 범위 내에서 하나 개 이상의 빈 인스턴스를 가질 수 없습니다. 예를 들어 한 요청에서 두 개의 요청 범위 bean 인스턴스를 가질 수 없습니다. 이것이 스코프의 핵심입니다.

그래서 콩을 관리해서는 안됩니다. 요청 속성으로 그들을 넣고 EL을 통해 액세스하십시오.

+0

다른 인스턴스를 복제하기 위해 CDI 관리 빈의 여러 기능을 "포함"했습니다. CDI와 @named annotation을 사용하고 싶지만 JSP 페이지에서 사용되는 여러 빈을 포함하는 오래된 방법이 비슷한 방식으로 복제 될 수 있기를 바란다. 당신의 대답에 감사드립니다. – icordoba

관련 문제