【问题标题】:How to use Map Collections with ICEfaces datatable component如何将地图集合与 ICEfaces 数据表组件一起使用
【发布时间】:2012-02-10 15:11:29
【问题描述】:

我正在尝试使用 Map 集合中的值(不管是哪种类型,HashMap、TreeMap)来填充 ICEfaces 数据表组件并显示对象属性。我能找到的唯一示例是将 Map 的值简单地导出到 List 集合中,并使用它来填充数据表的示例。但是,我觉得这非常浪费,我现在不得不维护两个精确值的集合。

数据表组件是否支持对 Map 的值进行迭代?如果没有,是否有比前面提到的解决方案更好的方法?

出于好奇,我想使用 Map 集合进行快速删除,它最自然地适合我的数据(基于键)。

【问题讨论】:

    标签: java jsf xhtml icefaces


    【解决方案1】:

    值得一试:

    我找到了以下解决方案:JSF: Using Map data in Datatable ,URL 中的示例指的是richfaces,但我认为您需要做的就是使用 IceFaces 标签,如果您使用 LinkedHashMap 它可能会帮助您处理订单.. .

    如果 URL 出错,代码如下:

    Map<String,String> myMap;
    
    public List<String> getMapKeys(){
        List<String> ret = new ArrayList<String>();
        for (String s : myMap.keySet())
            ret.add(s);
        return ret;
    }
    

    在 JSF 页面上:

    <rich:extendedDataTable value="#{myBean.mapKeys}" var="item"
        id="datatable">
        <rich:column width="190px" sortable="false" label="Map entries"
            id="labelColumn">
            <f:facet name="header">Map entries</f:facet>
            <h:outputText value="#{myBean.myMap[item]}" />
        </rich:column>
      </rich:extendedDataTable>
    

    【讨论】:

    • 应该可以,我不关心订单。我明天试试,如果有效,我一定会接受答案。谢谢!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2019-02-08
    • 1970-01-01
    • 2014-10-05
    • 2021-07-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多