JSONObject 转换时出错java.lang.reflect.InvocationTargetException 一时看不出来是什么问题。
挺奇怪的。
百度参考了一下这个
说是类型不对,空?
仔细查看代码,果然是有一个 关联的 user 对象是空的, 而且没有过滤掉
// JSONArray array = new JSONArray();
// for (Object data : page.getList()) {
// JSONObject jsd = new JSONObject();
// JsonConfig config = new JsonConfig();
// config.setExcludes(new String[] { "user", "auditerUser", "createtime",
// "auditTime" });// 过滤
// jsd = JSONObject.fromObject(data, config);
// array.add(jsd);
// }
// json.put("rows", array);
加上,就没有异常了
上面使用的json是 的 net.sf.json.JSONObject 的,
因为 user 属性是 对应 一个 user 表对象的。
而 上面的情况是 ,刚好 user 这个 对象的是 null 的所以才会出现那样的异常。
如果不是null那么就 容易出现 因为 user 对象没有过滤,产生的 循环处理 异常了,这个是 常见的错误了
本文解决了一个在使用net.sf.json.JSONObject进行对象转换时遇到的异常问题,详细分析了异常原因,并提供了解决方案,即通过设置JsonConfig排除特定字段,避免因空对象导致的异常。

566

被折叠的 条评论
为什么被折叠?



