第 30 章 通用故障处理


摘要

JAX-WS 规范定义了两种类型的故障。个是通用 JAX-WS 运行时例外。另一个是消息处理过程中抛出的协议特定例外。

30.1. 运行时故障

概述

大多数 JAX-WS API 会抛出一个通用的 javax.xml.ws.WebServiceException 异常。

引发 WebServiceException 的 API

表 30.1 “Throw WebServiceException 的 API” 列出可引发通用 WebServiceException 异常的一些 JAX-WS API。

表 30.1. Throw WebServiceException 的 API
API原因

Binding.setHandlerChain()

处理程序链配置中有一个错误。

BindingProvider.getEndpointReference()

指定类没有从 W3CEndpointReference 分配。

Dispatch.invoke()

Dispatch 实例配置中有一个错误,或者在与服务通信时出现错误。

Dispatch.invokeAsync()

Dispatch 实例的配置中出现错误。

Dispatch.invokeOneWay()

Dispatch 实例配置中有一个错误,或者在与服务通信时出现错误。

LogicalMessage.getPayload()

当使用提供的 JAXBContext 解封有效负载时,会出现错误。WebServiceException 的 cause 字段包含原始 JAXBException。

LogicalMessage.setPayload()

设置消息有效负载时出现错误。如果使用 JAXBContext 时引发异常,WebServiceException 的 cause 字段包含原始 JAXBException。

WebServiceContext.getEndpointReference()

指定类没有从 W3CEndpointReference 分配。

Red Hat logoGithubRedditYoutube

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

© 2024 Red Hat, Inc.