zoukankan      html  css  js  c++  java
  • SpringMVC3中返回json字符串时500 Internal Server Error的处理方案

    搭建 Spring3+MyBatis+Rest+BootStrap+JBPM项目环境后,测试发现了一个操蛋的问题。
    使用Spring MVC的自动类型转换为JSON时,后台数据List/Map获取完全正常,可是JS获取data报500错误。
    后台无任何异常信息。

    问题解决思路:
    后台数据操作正常,数据返回前端时候异常,问题集中在Spring的jackson json转换上。
    而Spring用了第三方的Jackson Json数据转换,异常信息的获取需要靠它,代码中加入如下部分:

     1 /**
     2      * 查询题库所有记录
     3      * @param req
     4      * @param model
     5      * @return
     6      */
     7     @RequestMapping
     8     @ResponseBody
     9     public Map<String, Object> getAllRecord(HttpServletRequest req,
    10             ModelMap model) {
    11         List<QuestionWh> allQuestions = questionWHService.selectAllQuestionWH();
    12         model.put("aaData",allQuestions);
    13         model.put("iTotalRecords",allQuestions.size());
    14         model.put("iTotalDisplayRecords",allQuestions.size());
    15         
    16         // 测试返回对象的Jackson json转换
    17         ObjectMapper om = new ObjectMapper();
    18         try {
    19             om.writeValueAsString(allQuestions);
    20         } catch (JsonGenerationException e) {
    21             e.printStackTrace();
    22         } catch (JsonMappingException e) {
    23             e.printStackTrace();
    24         } catch (IOException e) {
    25             e.printStackTrace();
    26         }
    27         
    28         return model;
    29     }

    顺利的打出了异常信息,如下:

    org.codehaus.jackson.map.JsonMappingException: No serializer found for class java.io.ByteArrayInputStream and no properties discovered to create BeanSerializer (to avoid exception, disable SerializationConfig.Feature.FAIL_ON_EMPTY_BEANS) ) (through reference chain: java.util.ArrayList[0]->java.util.HashMap["CREATETIME"]->oracle.sql.TIMESTAMP["stream"])

    异常找到,解决就很简单了。

  • 相关阅读:
    pcDuino无显示器刷机与使用
    pcDuino安装vnc进行远程控制
    pcDuino 刷系统-卡刷
    HDU 5441 2015长春站online1005(并查集)
    HYSBZ 2002 Bounce 弹飞绵羊(分块)
    HYSBZ 2243 染色 LCT学习
    HYSBZ 2049 Cave 洞穴勘测
    SPOJ 375 LCT学习
    HDU 4010 动态树LCT学习
    ZJOI2008 树的统计 树链剖分学习
  • 原文地址:https://www.cnblogs.com/huahua035/p/4502752.html
Copyright © 2011-2022 走看看