[apache/dubbo]provider 抛出自定义异常问题

2024-06-24 980 views
7
Environment
  • Dubbo version: 3.1.0
  • Operating System version: windows
  • Java version: jdk8
  • protocol:tri
  • serialization:kryo

问题描述:consumer将provider端抛出的自定义异常转换成了RpcException

目的: 参考了多种解决方案,有些方案中使用的dubbo版本已经落后于我当前的dubbo版本了,我想咨询一下目前官方 有针对provider统一异常的方案吗?或者就近的版本会更新解决这个问题

目前采取过的方案: 1.在provider端拓展ExceptionFilter,使其抛出BizException,但是客户端还是用RpcException进行了转换 2.在provider回传异常的code和msg,但是在consumer的clusterFilter中却拿不到provider回传的code和msg 3.在api接口声明BizException,无效,还是RpcException

回答

1

碰到同样这种问题的朋友,也麻烦指教一下解决方案,多谢了,实在没有妥善的处置方式,只能退回dubbo协议来使用了。 就我看到的issues,貌似方案2的形式也不能根本解决问题,在同一个实现方法中调用不同的provider接口好像更拿不到code和msg,不过这点我没有再深入研究了,只是有此疑问,更想得到最妥善的处理方式,多谢

6

方案三无问题一直都是这么用的 可以自己看源码 自己声明的异常不进行包装处理

6

public void hello()throws BizException , 这种形式还需要将异常包装?

9

tri 协议目前暂不支持抛出异常,下个版本将正式支持抛自定义异常。

1

您好 下个版本大概预计什么时间上线呀?

1

下个月底会正式发布

5

好的

3

请问dubbo 3.1.1 支持自定义抛出异常了吗?

8

Enhanced in #10667