1.问题描述
在从数据库获取某个数据列表,该列表通过用户id关联到用户,在获取用户信息时产生Could not write JSON问题,具体报错信息如下:
Resolved [org.springframework.http.converter.HttpMessageNotWritableException: Could not write JSON: (was java.lang.NullPointerException); nested exception is com.fasterxml.jackson.databind.JsonMappingException: (was java.lang.NullPointerException) (through reference chain: com.edu.server.pojo.RespPageBean["data"]->java.util.ArrayList[0]->com.edu.server.pojo.Post["publisher"]->com.edu.server.pojo.User["enabled"])]
通过分析,具体问题产生在User实体的enabled字段
然而定义的Ueser实体中并没有该字段,但是有一个isEnabled方法,该方法是重新UserDetails的方法,故而判断问题出在该方法上。
2.解决办法
一般情况下,报Could not write JSON
问题都可以通过添加@JsonIgnore
注解来解决,故在出现问题的方法上加上该注解,问题解决!