我在用Feign进行RPC调用的时候报了一个奇怪的错误,被调用者返回的地方一切正常,调用者却怎么也接受不到数据,抛出以下异常:
com.fasterxml.jackson.databind.exc.MismatchedInputException:Cannot construct instance of`com.isoftstone.isoftbase.entity.JsonResult` (although at least one Creator exists): cannot deserialize from Object value (no delegate- or property-based Creator)
原因:注意"Cannot construct instance of"意为无法构造出实例,我是定义了统一返回实体"JsonResult",但是却没有显式地声明无参构造函数(但是却定义了带参按构造函数),导致Feign调用者收到被调用者返回的JSON数据时无法反序列化成JSON对象。
解决方案:显式地声明无参构造函数即可。
返回实体:
Feign被调用方:
Feign调用方:
网友评论