我想在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。
initParam
<h:outputText value="#{initParam['myconstantkey']}" />
最初这对我不起作用,因为我忘记在键名周围加上单引号,而又得到了一个空字符串。此解决方案还应使用包含点字符的键值。