JSF - 如何从messages.properties动态显示值

Chi*_*ins 2 jsf el

我有一个DataModel,它有计划名称和一些其他属性.

我有不同的计划 - 金,银等.但我不想显示黄金或白银.根据语言环境,我想从messages.properties中显示它

这是我的代码片段:

           <h:dataTable value="#{newMemberController.membershipModel}"   
            var="plans" styleClass="gird_header_value">
            <h:column><h:outputText value="#{plans.name}" /></h:column>
Run Code Online (Sandbox Code Playgroud)

因此,而不是plans.name值,我想要像#{msgs.#{plans.name}}这样的东西,但这给了我一个编译错误.

有谁知道这是什么正确的语法?

Bal*_*usC 6

您可以使用括号表示法来访问Map具有动态的值key:#{map[key]}.

因此,以下示例应该:

<h:outputText value="#{msgs[plans.name]}" />
Run Code Online (Sandbox Code Playgroud)