问题出现的场景:
我在consumer里面调用provider的一个方法,方法里传递了一个UserBase对象,但是UserBase在provider里从Map取出来的时候变成了HashMap。
这个UserBase是通过UserBaseVo对象转换过来的,UserBase是UserBaseVo的子类。consumer和provider里都有UserBase对象,但是provider里没有UserBaseVo对象。
解决方案:
我尝试吧UserBaseVo也挪到公共的包里,这样consumer和provider都能引用到UserBaseVo
问题分析:
子类转父类过程中虽然引用改变了,但是堆里的数据结构没有改变。dubbo可能在序列化过程中无法反序列化未知的字段信息。当然这也是猜想。