将动态值作为JSF 2.0中Map的键传递

Tar*_*aan 5 el jsf-2

我有一个键列表'ListA'.密钥和列表的地图说'MapA'.我需要迭代'ListA'并为每个关键需要从'MapA'获取它的值.这些值充当dataTable的模型.

为此,我在ui:repeat中使用h:datatable.

<ui:repeat var="entry" value="#{bean.sampleDTO.sampleList}"
    varStatus="row">
    <tr>
        <td>#{entry.key}</td>
        <td><h:datatable value="#{bean.map[#{entry.key}]}" var="row">
                <h:column> 
                    // something
                </h:column>
            </h:datatable></td>
    </tr>
</ui:repeat>
Run Code Online (Sandbox Code Playgroud)

请考虑datatable的值:

value="#{bean.map[#{entry.key}]}"
Run Code Online (Sandbox Code Playgroud)

问题是密钥是我从#{entry.key}得到的变量.#{bean.map [#{entry.key}]}是无效的EL表达式,因为不能使用2#.

谢谢,Tarun Madaan

Dan*_*iel 6

对于el表达:试试这个

value="#{bean.map[entry.key]}"
Run Code Online (Sandbox Code Playgroud)

你不需要在#{}里面使用#{}