0

我在 faces-config.xml 中声明了一个 java 类。这是代码:

<managed-bean>
    <managed-bean-name>javaBean</managed-bean-name>
    <managed-bean-class>testpackage.ConcretJavaBean</managed-bean-class>
    <managed-bean-scope>session</managed-bean-scope>
<managed-bean>

如何在 faces-confix.xml 中未声明的另一个 java 类中使用此类?如何通过使用 JSF 中的 FacesContext 来获取此类,如下所示:

ConcretJavaBean bean = FacesContext. // what shall i do here?
4

1 回答 1

0
FacesContext context = FacesContext.getCurrentInstance();
ConcretJavaBean javaBean = context.getApplication().evaluateExpressionGet(
                      context,
                      "#{javaBean}",
                      ConcretJavaBean.class);

但是,请记住,这仅在 FacesContext 实例实际存在时才有效。如果你在处理请求的同一个线程中调用它,你应该没问题。

于 2013-11-07T09:30:45.580 回答