servlet里Map对象存进Session,在JSP里取出来以后Map里面值为空,这是为什么?在线等·····

servlet中的代码:try{HttpSessionsession=request.getSession(true);Mapcart=request.getParame... servlet中的代码: try { HttpSession session = request.getSession(true); Map cart = request.getParameterMap(); //这里的Map是有数据的。 //这里来输出cart的话是没有问题的。 session.setAttribute("cart", cart); response.sendRedirect("gouwuche.jsp"); } finally { out.close(); } gouwuche.jsp页面代码: <% Map cart = (Map)session.getAttribute("cart"); Iterator iter= cart.entrySet().iterator(); while(iter.hasNext()) { Map.Entry entry = (Map.Entry)iter.next(); String key = (String)entry.getKey(); String val = null; Object obj = entry.getValue(); if (obj instanceof String[]) { String[] strs = (String[])obj; val = Arrays.toString(strs); }else{ val = obj.toString(); } out.println(key + "---" + val); } %> 运行后没有输出值,因为While里面的内容都没有运行。同样的输出语句放在servlet里面就能正常输出。说明从JSP里取出来的Map出了问题,注释掉这一行: while(iter.hasNext()) 直接输出第一个值, 运行会抛出异常: while(iter.hasNext()) 这是为什么?怎么能让JSP取出的Map同Servlet中的一样有值? 展开
 我来答
溯流光63
2014-07-14 · TA获得超过260个赞
知道答主
回答量:124
采纳率:0%
帮助的人:159万
展开全部
request取的对象请求结束后被销毁 值取出来加到一个集合里就行了
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式