【问题标题】:Custom component and access to backing bean自定义组件和对支持 bean 的访问
【发布时间】:2023-04-09 11:30:01
【问题描述】:

是否可以在 JSF2 中从自定义组件(在方法 encodeBegin 中)访问 FacesContext 和托管 bean?

谢谢。

【问题讨论】:

    标签: java jsf-2 managed-bean custom-component


    【解决方案1】:

    是的。更重要的是,FacesContext 可用作encodeBegin() 方法的方法参数。

    然后,要访问托管 bean,请使用 Application#evaluateExpressionGet()

    Bean bean = (Bean) context.getApplication().evaluateExpressionGet(context, "#{beanName}", Bean.class);
    

    【讨论】:

      【解决方案2】:

      public Object getSessionBean(String beanName) {
      FacesContext 上下文 = FacesContext.getCurrentInstance(); sessMap = context.getExternalContext().getSessionMap(); 返回 sessMap.get(BeanName); }

      【讨论】:

        猜你喜欢
        • 2015-08-04
        • 2012-06-19
        • 2011-01-10
        • 2011-07-01
        • 1970-01-01
        • 2018-05-19
        • 1970-01-01
        • 1970-01-01
        • 2014-12-09
        相关资源
        最近更新 更多