当前位置:首页 > WEB开发 > Web开发

用Map出现异常:CaseInsensitiveHashMap cannot be cast to java.lang.String

优良自学吧提供用Map出现异常:CaseInsensitiveHashMap cannot be cast to java.lang.String,用Map出现错误:CaseInsensitiveHashMap cannot be cast to java.lang.Stringaction里的部分代码   List<String> list=Fi

用Map出现错误:CaseInsensitiveHashMap cannot be cast to java.lang.String
action里的部分代码
  List<String> list=FindBookDAO.findByNamelike(keyword);
   ActionContext.getContext().put("books",list);
   Map<String,String> books=new LinkedHashMap<String,String>();
   Iterator<String> it=list.iterator();
   while(it.hasNext())
   {
   String map=(String)it.next();
  books.put("books", map);
   }
   setResult(books);


所有的类型我都已经强制转换过了,编译通过了,但是jsp  跳转到action这里就出现问题。
用Map出现异常:CaseInsensitiveHashMap cannot be cast to java.lang.String
上面错误上显示的83行:  String map=(String)it.next();

今天卡一天了。
------解决思路----------------------
FindBookDAO.findByNamelike返回的应该不是String类型的List,你可以试试
List<CaseInsensitiveHashMap> list=FindBookDAO.findByNamelike(keyword);
           ActionContext.getContext().put("books",list);
           Map<String,CaseInsensitiveHashMap> books=new LinkedHashMap<String,CaseInsensitiveHashMap>();
           Iterator<CaseInsensitiveHashMap> it=list.iterator();
           while(it.hasNext())
           {
               CaseInsensitiveHashMapmap=(CaseInsensitiveHashMap)it.next();
          books.put("books", map);
           }
           setResult(books);
(本文来自互联网,不代表搜站(http://www.ylzx8.cn/)的观点和立场)
本站所有内容来自互联网,若本站收录的信息无意侵犯了贵司版权,请给我们来信(ylzx8cn@163.com),我们会及时处理和回复,谢谢