Closed wyatt-513 closed 1 year ago
可否贴一下完整的代码。我这边自测服务端泛化是可以的呢
噢,provider泛化、consumer不泛化调用下,复现了该问题。我这边处理一下吧
感谢
噢,provider泛化、consumer不泛化调用下,复现了该问题。我这边处理一下吧
请问,目前是什么情况?
@wyatt-513 修复的pr已经提交
@icodening @AlbumenJ 这个场景修复之后, 客户端泛化, 调用不泛化provider, 会有问题. 本身我们客户端泛化这块, 不依赖provider的接口声明. 在调用时会报 Not found class异常
Environment
Steps to reproduce this issue
服务端使用自定义MyGenericService(实现GenericService接口),重写$invoke函数(可以简单返回hello,word字符串)
服务端使用ServiceConfig发布一个服务:
serviceConfig.setInterface("com.alibaba.middleware.demo.hsf.HelloService")
serviceConfig.setVersion("1.0.2")
serviceConfig.setGroup("DUBBO")
serviceConfig.setProtocols("tri");
serviceConfig.setRef(new MyGenericService());
serviceConfig.setGeneric("true");
serviceConfig.export();
客户端使用注解@DubboReference加载服务 @DubboReference(group="DUBBO", version="1.0.2", protocol="tri") private HelloService genericTriToHsfHelloService;
使用genericTriToHsfHelloService调用sayHello方法。 Pls. provide [GitHub address] to reproduce this issue.
目前,实验结果表明,如果是dubbo协议,上述情况无任何异常,如果是tri协议,则无法访问泛化服务。
希望,tri协议下也能支持非泛化客户端访问泛化发布的服务。
Expected Behavior
打印出 hello,world.
Actual Behavior
客户端报错:空指针异常
If there is an exception, please attach the exception trace: