我试图搜索这个,但我无法在任何地方找到解决方案。我真正想做的是我在云上实现了一项休息服务(第 3 方)。从我的应用程序中,我只实现了一个休息客户端(CXF 2.7.2),它在云上调用此服务并在返回对客户端的响应(主要是本机移动应用程序)之前进行一些处理。所以基本上它充当中间件。基本上,我想在中间件(rs-client)上实现一个通用的异常处理。服务实现(第 3 方)对我来说是一个黑匣子,我无法访问他们的代码。当我使用客户端使用服务时,有时会收到带有正确消息的响应 400(我最终会收到带有消息的 javax.ws.rs.BadRequestException,例如输入无效;有时在某些情况下我会收到 null作为回应。
我想要做的是处理所有可能的(无论如何我能想到的)这样的响应/代码情况,并将它们转换为自定义异常。除此之外,我还想处理其他情况,如超时等,并将这些也转换为自定义异常并将其返回以让用户使用此异常做他们想做的事情。此外,一路记录错误。我在各个地方看到可能使用句柄消息来处理它,但我无法实现完整的实现。