首页 > Web开发 > 详细

fastjson自动转化参数报错

时间:2016-01-20 18:44:52      阅读:163      评论:0      收藏:0      [点我收藏+]

开发环境:spring-mvc4.1.7、fastjson1.2.7

问题描述:系统采用的前后端完全分离方式,前端页面使用ajax调用后台服务时,想用fastjson自动转化请求参数对象。

// 前端调用
$.ajax({   url :
"bas/test.do",   type : "POST",   async : true,   contentType : "application/json; charset=utf-8",   data : country,//外层定义的json对象   success : function(rst) {alert(JSON.stringify(rst)); }
// 后台服务
1
@ResponseBody 2 @RequestMapping(value = "/add.do", method = { RequestMethod.POST, RequestMethod.GET }, produces = "application/json;charset=UTF-8") 3 public void add(@RequestBody Country country) { 4 // ... 5 }
运行报错堆栈,如下:
严重: Servlet.service() for servlet [SpringMVC] in context with path [/mfd] threw exception [Request processing failed; nested exception is com.alibaba.fastjson.JSONException: syntax error, expect {, actual error, pos 0] with root cause com.alibaba.fastjson.JSONException: syntax error, expect {, actual error, pos 0 at com.alibaba.fastjson.parser.deserializer.JavaBeanDeserializer.deserialze(JavaBeanDeserializer.java:232)

网上搜索各种解决方案未果,最后尝试将json对象转化成json字符串,调用成功。

修改为data : JSON.stringify(country)

上一个项目使用jackson时,data参数直接传的是json对象,fastjson不支持这种方式。。。

fastjson自动转化参数报错

原文:http://www.cnblogs.com/lqs0112/p/5145830.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!