表达式语言按键访问地图值

时间:2013-03-29 06:05:43

标签: jsp jstl jsp-tags

我正在使用listEvents标记在JSP中迭代名为List<String>(类型为<c:forEach>)的列表。在for循环中,我需要显示HashMap<String,String>的值。 hashmap的关键是列表中的元素。请在下面找到代码段。

<c:forEach items="${listEvents}" var="listEvent" varStatus="eventCount">
     <c:out value="${eventMap[listEvent]}</
</c:forEach> 

当我尝试使用上面的代码时,我正在

  

PropertyNotFoundException [java.lang.String上找不到“Key”属性]。

我该如何解决这个问题?

1 个答案:

答案 0 :(得分:1)

这是正确的方法:

         <c:forEach var="listEvent" items="${eventMap}" varStatus="eventCount">
                ${listEvent.value}
         </c:forEach>

要访问该键,请添加以下行:

         ${listEvent.key}