1

我想在 JSF2 页面中使用同一个 CDI 命名 bean 的多个实例。(想象一下,我有一个支持 bean 来访问 contentmanager 类别,但我想在同一个 JSF 页面中显示多个类别)我想知道如何“覆盖”@Named 注释的默认名称,以便我可以拥有这 3 o 4 个实例在我的页面中。(¿记住旧的 JSP“useBean”标签在页面中使用 bean...您可以通过这种方式使用同一类的多个实例)我搜索过 beans.xml,但没有找到。我可以使用旧 faces-context.xml“托管 bean”条目吗?不知道这是否适用于 CDI @Named bean 或只能用于旧的非 CDI 托管 bean。

感谢您提供任何信息,伊格纳西奥

4

2 回答 2

2

您可以只使您的 bean @Dependent(或删除现有的范围注释),并且只要您不在同一个 EL 表达式中使用该 bean 两次,您将获得新的底层实例。

于 2011-01-04T19:56:14.940 回答
0

在给定范围内不能有多个 bean 实例。因此,例如,在一个请求中,您不能有两个请求范围的 bean 实例。这就是范围的重点。

所以我想你根本不应该管理你的豆子。只需将它们作为请求属性并通过 EL 访问它们。

于 2010-12-29T21:06:33.803 回答