Feign远程调用接口时报:Cannot deserialize instance of `java.lang.String[]` out of START_OBJECT token

报错的意思是不能反序列化成String[],因为我提供的接口返回值是个数组。经验证发现是传入的参数对象中,设置了@NotNull的属性没有赋值,导致服务端接口报错。报错之后的返回值不是字符串数组,也不是空,导致不能反序列化。

开发过程中还发现入参dto写了全参构造函数,忘了写无参构造,也导致了类似报错。

so,报错反序列化失败时,直接原因应该是返回值类型不匹配,

间接原因:

1是服务端的返回值类型和客户端的不一致

2就是报错了。

你可能感兴趣的:(常见错误解决)