与Dubbox不兼容
问题
由于Dubbo是基于RPC的,目前采用支持稳定版Dubbo 2.5.3
的组件InvokeDubbo,兼容已发布的稳定版本2.8.4
。
但试图连接由Dubbox master
分支提供的服务接口,由于master上的提交85b9ab,导致对象传输过程中序列化与反序列化失败。
报错误为:
faild to decode request
实际后台报的错误:
解决办法
Dubbox Restful
由于不兼容,且Dubbox支持Restful方式,不建议使用远程服务调用的方式,即不使用InvokeDubbo直接调用,而改用InvokeHTTP的方式调用Restful API。
特殊定制组件
经过测试,使用dubbox master打包的依赖包,替换掉原dubbo的2.5.3包,可解决。
故而现已开发了特殊定制版的InvokeDubbox组件,仅针对由于错误序列化提交85b9ab不兼容导致问题的master版本。
如果是发布版本2.8.x,则仍旧可以用InvokeDubbo组件。如果以后Dubbox修正该问题,则也是可继续使用InvokeDubbo组件。