错误日志:
com.alibaba.fastjson.JSONException: not match : - =, info : pos 14, json : [{alarmContent=, alarmTime=, deviceName=, id=, readTime=, userName=, userPicture=},{alarmContent=, alarmTime=, deviceName=, id=, readTime=, userName=, userPicture=}]
at com.alibaba.fastjson.parser.JSONLexerBase.nextTokenWithChar(JSONLexerBase.java:393) ~[fastjson-1.2.47.jar:na]
at com.alibaba.fastjson.parser.JSONLexerBase.nextTokenWithColon(JSONLexerBase.java:503) ~[fastjson-1.2.47.jar:na]
at com.alibaba.fastjson.parser.deserializer.JavaBeanDeserializer.parseField(JavaBeanDeserializer.java:1076) ~[fastjson-1.2.47.jar:na]
at com.alibaba.fastjson.parser.deserializer.JavaBeanDeserializer.deserialze(JavaBeanDeserializer.java:773) ~[fastjson-1.2.47.jar:na]
at com.alibaba.fastjson.parser.deserializer.JavaBeanDeserializer.parseRest(JavaBeanDeserializer.java:1283) ~[fastjson-1.2.47.jar:na]
at com.alibaba.fastjson.parser.deserializer.FastjsonASMDeserializer_4_TbDeviceAlarmVo.deserialze(Unknown Source) ~[na:na]
at com.alibaba.fastjson.parser.deserializer.JavaBeanDeserializer.deserialze(JavaBeanDeserializer.java:267) ~[fastjson-1.2.47.jar:na]
at com.alibaba.fastjson.parser.DefaultJSONParser.parseArray(DefaultJSONParser.java:747) ~[fastjson-1.2.47.jar:na]
at com.alibaba.fastjson.parser.DefaultJSONParser.parseArray(DefaultJSONParser.java:681) ~[fastjson-1.2.47.jar:na]
at com.alibaba.fastjson.parser.DefaultJSONParser.parseArray(DefaultJSONParser.java:676) ~[fastjson-1.2.47.jar:na]
at com.alibaba.fastjson.JSON.parseArray(JSON.java:535) ~[fastjson-1.2.47.jar:na]
问题处理:
- 转换报错代码:
List<TbDeviceAlarmVo> list = JSONArray.parseArray(result.getData().toString(), TbDeviceAlarmVo.class);
- 修改后代码:
String arrayData = JSONArray.toJSONString(result.getData());
List<TbDeviceAlarmVo> list = JSONArray.parseArray(arrayData, TbDeviceAlarmVo.class);
OK!