【问题标题】:Passing string parameter to a function or method from xhtml从 xhtml 将字符串参数传递给函数或方法
【发布时间】:2012-11-19 21:58:40
【问题描述】:

我有一个按钮,我想根据函数返回 true 还是 false 来呈现它。

HTML:

<p:commandButton type="button" rendered="#{myBean.checkPermission(1)}" value="Create"  />

还有配套的bean:

public boolean checkPermission(String actionKey) {
...
}

问题是当我使用像

这样的数字参数调用 checkPermission

#{myBean.checkPermission(1)},

它工作正常,但我将字符串作为参数传递,即

#{myBean.checkPermission(ABC)}

,我得到一个空字符串传递。知道为什么吗?

【问题讨论】:

    标签: jsf el


    【解决方案1】:

    您没有传递 String,而是传递了 EL 无法理解的 ABC 变量,您的方法将收到 null 值(感谢 BalusC 的纠正)。您应该添加撇号 (') 来告诉框架您正在传递 String

    <p:commandButton type="button" rendered="#{myBean.checkPermission('ABC')}"
        value="Create" />
    

    【讨论】:

    • 更具体地说是 EL 不理解它。变量 #{ABC} 不存在于 EL 范围内,计算结果为 null。这超出了 JSF 的控制范围。
    猜你喜欢
    • 2011-05-12
    • 2018-07-21
    • 2012-03-30
    • 1970-01-01
    • 2020-01-01
    • 2016-12-18
    • 1970-01-01
    相关资源
    最近更新 更多