gpt4 book ai didi

java - 如何反序列化从服务器接收到的客户端异常

转载 作者:行者123 更新时间:2023-12-04 05:37:36 24 4
gpt4 key购买 nike

我有一个客户端 (JVM1) 以 RESTful 方式与服务器 (JVM2) 交谈。我正在使用 JSON 作为有效负载机制。

当服务器抛出异常时,我可以将其序列化为 JSON 格式并通过网络发送。在客户端,我收到响应并查看 JSON 格式的内容。

问题是我无法识别正在抛出的特定类型的异常。

给定 JSON 格式的某些异常的序列化版本(可能是 NullPointerException、IllegalStateException,甚至是检查异常),我如何在客户端构造相同类型的对象。

如果需要,我可以添加任何包装类并在客户端和服务器之间共享它。

提前致谢。

最佳答案

通常,在客户端反序列化任意异常是一个坏主意。例如,服务器可以抛出一个 SQLException 的子类,该子类恰好特定于正在使用的 jdkc 驱动程序 impl。客户端很可能在其类路径中没有 jdbc 驱动程序,因此任何反序列化异常的尝试都会导致某种疯狂的类加载异常。最好的办法是将异常转换为像“ServerException”这样的通用类,并将相关细节作为该类的字符串成员(例如原始异常名称、消息、堆栈跟踪等)。

关于java - 如何反序列化从服务器接收到的客户端异常,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11725073/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com