4

controller.java に次の MultiHashMap があります。

MultiHashMap multimap= new MultiHashMap();

List<SampleList> list1 = (List<SampleList>) 
                         request.getPortletSession().getAttribute("list1");  
Iterator<SampleList> sampleListIterator= list1.iterator();

while(sampleListIterator.hasNext()){
    SampleList sampleList = sampleListIterator.next();
    List <SubList> subList =  sampleList.getsubList();
    Iterator<SubList> subListIterator = subList.iterator();

    while(subListIterator.hasNext() ){
        SubList subList2 = subListIterator.next();
        multimap.put(subList2.getCategorySubcategory(),subList2.getCost());
    }
}

jspには、上記のハッシュマップを表示するテーブルがあります

<table>
    <tbody>
        <c:foreach var="item" items="${multimap}">
            <tr>
                <th> ${item.key}</th>
                <c:foreach var="valueList" items=${item.value}>
                    <td> ${valueList}</td>
                </c:foreach>
            </tr>
        </c:foreach>
    </tbody>
</table>

コントローラーから値をレンダリングしようとすると、エラーが発生します。

4

3 に答える 3

1

以前に MultiHashMaps を使用したことはありませんが、これは通常、jsp ページに HashMap のコンテンツを表示する方法です (ジェネリックの例はありません)。

Iterator iter = map.entrySet().iterator();
while(iter.hasNext()){
   Map.Entry entry = iter.next();
   Object key = entry.getKey();
   Object value = entry.getValue();
于 2013-05-14T13:40:46.543 に答える