【问题标题】:How to access DualTreeBidiMap Key/Value in jsf 2.0 outputText如何在 jsf 2.0 outputText 中访问 DualTreeBidiMap 键/值
【发布时间】:2012-06-07 10:35:07
【问题描述】:

我在 WebSphere Application Server 8 上使用 Apache MyFaces 2.0.2。

如何在 JSF 2.0 中获取 DualTreeBidiMap 的键?

DualTreeBidiMap 提供 getKey(Object Value) 或 get(Object Key) 方法。

我在另一个 ManagedBean 中有这个值,所以我想用 EL 打印出这个值的键。

我尝试过这样的事情:

<h:outputText value="#{bean1.dualTreeBidiMap.key(bean2.value)}"  />

但这不起作用。

【问题讨论】:

    标签: jsf-2


    【解决方案1】:

    由于你的 value 属性是一个方法表达式而不是一个值表达式,正确的语法应该是:

    <h:outputText value="#{bean1.dualTreeBidiMap.getKey(bean2.value)}"  />
    

    get 前缀只需要在值表达式中省略(对于带有无参数 getter 的字段)。

    请注意,只有从 EL 2.2 起才可以使用参数调用方法。我没有使用 WAS 8,但快速的 Google 搜索显示它应该支持 EL 2.2。

    【讨论】:

    • 很遗憾,但这个解决方案对我不起作用。我试过了: 这个也不行。
    • 你有这个例子吗?
    • 我尝试了一个简单的方法,该方法将字符串作为参数并返回修改后的字符串。适应您的源代码,它可能类似于#{bean1.dualTreeBidiMap.getKey('hello')}" - 假设您的值是一个字符串。
    • 来自this link EL 2.2 应该是 WAS 8 的一部分
    • 如何检查 EL 2.2 是否可用?有没有方法,可能在 FacesContext 中?
    猜你喜欢
    • 2012-04-01
    • 2014-03-26
    • 1970-01-01
    • 2012-01-07
    • 1970-01-01
    • 1970-01-01
    • 2015-04-17
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多