最近负责的项目,运维发了一个下面错误给我
解析任务参数失败, com.alibaba.fastjson.JSONException: syntax error, expect {, actual EOF, pos 0, line 1, column 1
我看了代码发现打印出错误日志的代码如下
try { return JSON.parseObject(taskParam, Map.class); } catch (Exception e) { logger.error("解析任务参数失败,hosp id :{},错误:{}", hospitalId, e); return null; }
看了是运行的定时任务配置的参数出了问题,但是在在页面上发现运行的任务没有配置参数。
大概猜到数据库这一任务的参数配置,不符合和json解析,查询数据数据库,果然发现问题,发现需要解析的参数为空字符串(""),将异常数据改为正常json,问题解决。
所以如果出现标题的错误,最好检查一下需要解析的数据是什么样子的。