JSP / JSTL将JavaBean返回的HashMap转换为String

时间:2014-05-18 04:09:10

标签: java jsp javabeans el

我不是JSP技术的专家,并且在这里寻求一些帮助从bean访问HashMap。我有一个返回Hashmap的java类,并希望在JSP中访问哈希映射的键和值。 以下是我试过的内容

//jsp:
<jsp:useBean id="mc" class="MyMapClassReturnsMap" /> 
<c:forEach items="${mc.getMap()}" var="mapkeyval">
<tr>
<td><c:out value="${mapkeyval.key}"></c:out></td>
</tr>
</c:forEach>

//Error:
javax.el.PropertyNotFoundException: Property 'key' not found on type java.lang.String

页面将地图作为String返回,如果我从mapkeyval页面删除.key,将map显示为String。不知道我错过了什么,但任何指针都将被赞赏gr8ly

我确信我正在从我的班级返回HashMap,以下是我的主要方法,它按预期工作

 HashMap<String, String> jname1 = new HashMap<String, String>();
  ..
  ..
 public static void main(String[] args) {
 MyMapClassReturnsMap ta = new MyMapClassReturnsMap();
 ta.searchFiles("root","CUST");
 for(Map.Entry<String, String> s: ta.jname1.entrySet())
 System.out.println("HashMap Values : "+ s.getKey() + " :" +s.getValue());
    }

1 个答案:

答案 0 :(得分:0)

试试这个,

<c:forEach items="${jname1 }" var="mapkeyval">

并为&#39; jname1&#39;提供getter和setter方法。在你的班上