前言
错误信息:
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.core.server.dto.security.SecurityUserDto["enabled"])]
阅读文档:https://blog.csdn.net/gy7907/article/details/85761742
解决办法
参考文档
- https://blog.csdn.net/gy7907/article/details/85761742 说是实体类中的包装类引起的,比如Integer
- https://blog.csdn.net/fzy629442466/article/details/89713660 统一配置Feign 的Encoder和Decoder的Jackson转换方式
第一种没试,因为不可能因为它就改实体类的类型的。
第二种试了下,没成功,还是报这个错。
思路:服务端测试用例没问题;启动也可以成功;消费端调用,可以进断点到服务端,服务端也可以返回。但是,返回的时候,会报一个客户端已断开了连接。 如果是不进行断点调试,服务端是不会报这个问题的。
反而是消费端,报了个jackson的问题。
想了下,觉得是springcloud或者是feign 和 jackson的配置问题。
2019年12月19日20:32:42
原因:登录调服务 查询用户的时候,返回对象dto,其中不小心,实体类里面有个参数是基础类型的。然后,统一配置Feign 的Encoder和Decoder的Jackson转换方式 。因为这个文件,会导致需要配置忽略所有空字段。