报错信息:
{
"ErrorCode" : 2,
"ErrorContent" : "java.util.LinkedHashMap cannot be cast to com.better517na.gwCommunicateJavaService.wordJiujiu.model.vo.PayVo",
"ResponseTime" : 1455851510156
}
解决思路:
1、服务调用方 传参正确,调用方和服务提供方的对象model均未使用LinkedHashMap。
2、入参
public class RequestVo<T> {
@NotNull
private T body;
}
body是泛型。
3、调用方传入参数RequestVo,提供方只是直接PayVo payVo = requestVo.getBody()了,这里出现了异常。
解决方案:
将传入的参数转为PayVo即可。添加如下两行代码:
// 将泛型body转json再转PayVo对象。
PayVo payvo = GSON.fromJson(GSON.toJson(requestVo.getBody()), PayVo.class);
requestVo.setBody(payvo);
后面再PayVo payVo = requestVo.getBody()即正常了。
时间: 2024-12-03 07:30:50