Skip to content

[FEATURE] Migrate GenericException from dubbo-go to dubbo-go-hessian2 #3361

Closed
apache/dubbo-go-hessian2
#397

Description

@Alanxtl

1. 背景

在 dubbo-go 项目的 PR #3183 (为适配 #3167 「完善泛化调用功能,补齐与 Java 版本的差距」)中,新增了 GenericException 结构体,用于在 Hessian2 序列化 / 反序列化链路中保留 Java 异常的类名(ExceptionClass)和消息(ExceptionMessage),解决了仅返回字符串导致异常类型信息丢失的问题

经评审建议:GenericException 属于 Hessian2 序列化协议层的通用异常定义,而非 dubbo-go 业务层逻辑,更适合内聚到 dubbo-go-hessian2 项目

当前状态:dubbo-go 侧的 GenericException 代码已被 merge,需后续完成迁移优化,避免核心协议层定义散落在业务项目中

2. 目标

将 dubbo-go 中 protocol/dubbo/hessian2/hessian_response.go 内的 GenericException 结构体迁移至 dubbo-go-hessian2 核心库

3. 待办

  • 阶段 1:

在 dubbo-go-hessian2 中新增 GenericException 定义,在 dubbo-go-hessian2 项目中新建 / 复用合适的文件(如 exception.go 或 generic.go),新增 GenericException 结构体,保持字段与 dubbo-go 侧一致且兼容 Java 端

  • 阶段2:

删除 dubbo-go 中 protocol/dubbo/hessian2/hessian_response.go 内的 GenericException 结构体定义(避免重复)。
修改 dubbo-go 所有引用 GenericException 的文件的导入路径

Activity

  1. added theissue type on Jun 1, 2026
  2. Modo-me commented on Jul 4, 2026

    @Modo-me
    Contributor

    你好,我可以试试继续这个issue上的工作,可以assign给我吗

  3. Alanxtl commented on Jul 5, 2026

    @Alanxtl
    MemberAuthor

    你好,我可以试试继续这个issue上的工作,可以assign给我吗

    sure

  4. Modo-me commented on Jul 16, 2026

    @Modo-me
    Contributor

    这个issue暂时先不要completed,阶段二dubbo-go这边改GenericException的引用还没完成

  5. Alanxtl commented on Aug 4, 2026

    @Alanxtl
    MemberAuthor
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions