【问题标题】:JSF 2 - How can I get a context-param value from web.xml using JSF EL?JSF 2 - 如何使用 JSF EL 从 web.xml 获取上下文参数值?
【发布时间】:2011-09-25 06:38:12
【问题描述】:

我想在 web.xml 文件中声明我的 JSF 2 webapp 使用的一些常量值,如下所示:

<web-app>
    <context-param>
        <param-name>myconstantkey</param-name>
        <param-value>some string value</param-value>
    </context-param>
</web-app>

从支持 bean 中获取这些值很容易:

FacesContext ctx = FacesContext.getCurrentInstance();
String myConstantValue =
    ctx.getExternalContext().getInitParameter("myconstantkey");

如何使用 JSF EL 从 Facelets 页面内部实现相同的功能以获取值?

【问题讨论】:

    标签: java jsf-2


    【解决方案1】:

    Steve Taylor 的回答确实有效,但有一种更简单的方法是使用 JSF EL 预定义对象initParam

    <h:outputText value="#{initParam['myconstantkey']}" />
    

    最初这对我不起作用,因为我忘记在键名周围加上单引号并返回一个空字符串。此解决方案还应该适用于包含点字符的键值。

    【讨论】:

      【解决方案2】:
      #{facesContext.externalContext.initParameterMap.myconstantkey}
      

      【讨论】:

        【解决方案3】:

        通过 EL

        ${initParam['myconstantkey']}
        

        【讨论】:

          猜你喜欢
          • 2013-09-02
          • 1970-01-01
          • 1970-01-01
          • 2010-12-28
          • 2018-09-16
          • 1970-01-01
          • 2011-12-06
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多