JSF 2-如何使用JSF EL从web.xml中获取上下文参数值?
问题内容:
我想在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页面内部获得相同的值?
问题答案:
史蒂夫·泰勒(Steve Taylor)的答案的确有用,但是使用JSF EL预定义对象有一种更简单的方法initParam
。
<h:outputText value="#{initParam['myconstantkey']}" />
最初这对我不起作用,因为我忘记在键名周围加上单引号,而又得到了一个空字符串。此解决方案还应使用包含点字符的键值。