@SuppressWarnings("unchecked")
private String toJSON(List list, Map map) {
System.out.println("toJoson_list="+list);
System.out.println("toJoson_map="+list);
 for(Iterator it = list.iterator(); it.hasNext();)   {
 int i=0;

Map cellMap = new HashMap();
cellMap.put("id", ((Map) list.get(i)).get("manameID").toString());
cellMap.put("cell", new Object[] { 
((Map) list.get(i)).get("MANAGEID"),
((Map) list.get(i)).get("MANAGENAME"),
((Map) list.get(i)).get("TEACHERID"),
((Map) list.get(i)).get("DEPTNO"),
((Map) list.get(i)).get("MANAGEPASSWOD") });
list.add(cellMap);
i++;
}
map.put("rows",list);
JSONObject object = new JSONObject(map);
System.out.println("object="+object.toString());
return object.toString();
}
报的错误2011-5-8 15:16:53 org.apache.catalina.core.StandardWrapperValve invoke
严重: Servlet.service() for servlet flexGridServlet threw exception
java.lang.NullPointerException
at FlexiGridServlet.toJSON(FlexiGridServlet.java:315)
at FlexiGridServlet.doGet(FlexiGridServlet.java:278)
at FlexiGridServlet.doPost(FlexiGridServlet.java:289)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:637)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:298)
at org.apache.coyote.http11.Http11AprProcessor.process(Http11AprProcessor.java:861)
at org.apache.coyote.http11.Http11AprProtocol$Http11ConnectionHandler.process(Http11AprProtocol.java:579)
at org.apache.tomcat.util.net.AprEndpoint$Worker.run(AprEndpoint.java:1584)
at java.lang.Thread.run(Thread.java:619)

解决方案 »

  1.   

    at FlexiGridServlet.toJSON(FlexiGridServlet.java:315)  这一行具体点是指的你的哪段程序?你贴出的程序的那一句?
      

  2.   

    问题补充
    (1)这个是servelet中的自定义的一个方法
    (2)at FlexiGridServlet.toJSON(FlexiGridServlet.java:315)就是 下面的
    cellMap.put("id", ((Map) list.get(i)).get("manameID").toString());(3)at FlexiGridServlet.doGet(FlexiGridServlet.java:278)下面  在另一函数调用时的
    String json = toJSON(list, map);  (4)at FlexiGridServlet.doPost(FlexiGridServlet.java:288)是servelet中 dopost调用中
    doget 方法的doGet(request, response);
      

  3.   

    for(Iterator it = list.iterator(); it.hasNext();)  楼主你这句代码什么意思,foreach遍历?我没有见过这样写过,中间还是个;号,没有见过。 空指针应用,可定有值是空,确定list传过来了?