1

我在 JSF2 中工作,我已经显示了一个资源包来显示来自属性文件的消息。

配置似乎很棒(如果我调用#{msg.risk}“toto”会显示)

消息属性

...
COMPANYGROWTH=E249
RISK=TOTO

我想做这样的事情:

看法

<f:loadBundle basename="toto" var="msg"/>
...
<p:column>
    <h:outputText value="#{msg.#{key}}" />
</p:column>

将 EL 放在 EL 中,例如#{msg.#{key}}wherekey将是数据表中声明的行值。有没有办法做到这一点?

谢谢

4

1 回答 1

2

为此,您应该使用大括号表示法#{bean[property]}

因此,所以:

<h:outputText value="#{msg[key]}" />

请注意,嵌套 EL 表达式始终是无效的语法。您应该将#{...}其视为一个大型评估空间,其中变量相互影响。您不应将#{...}其视为单个变量。

也可以看看:

于 2013-06-21T12:28:47.797 回答