JSF 2 - 如何使用JSF EL从web.xml获取上下文参数值?

时间:2011-06-29 15:28:45

标签: java jsf-2

我想在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页面内部获取相同的内容以获取值?

3 个答案:

答案 0 :(得分:33)

史蒂夫泰勒的答案确实有效,但使用JSF EL预定义对象initParam有一种更简单的方法。

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

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

答案 1 :(得分:6)

#{facesContext.externalContext.initParameterMap.myconstantkey}

答案 2 :(得分:0)

通过EL

userObj.update({"_id": new mongoose.Types.ObjectId(userId)},
            {$set: {
                      stripe : stripeData,
                 }
            },
            function (err, res) {
                if (err) {
                    console.log(err);

                } else {
                    res.jsonp{'message': 'Stripe Account connected sucessfully!'}
                }

            });