使用 JAX-WS 异步响应 servlet

Java™ API for XML-Based Web Services (JAX-WS) 包括异步响应 servlet,它在应用程序服务器环境中用于接收异步调用的 JAX-WS 请求的响应。

开始之前

JAX-WS 支持使用回调或轮询模型以通过异步客户机调用来调用 Web Service。回调模型和轮询模型在 Dispatch client 和 Dynamic proxy client 上可用。在应用程序服务器环境中运行的 JAX-WS 客户机使用异步客户机调用时,异步响应 servlet 将接收响应。要了解如何使用异步客户机调用模型,请阅读关于通过异步方式调用 JAX-WS Web Service 的内容。

注: Liberty 不支持使用 JAX-WS 编程模型进行异步请求和响应消息交换。作为替代,您可以使用 Web Service 寻址 (WS-Addressing) 进行消息交换。

关于此任务

在应用程序服务器中使用异步响应 servlet 来处理入局异步响应。servlet 使用对应用程序服务器指定的相同安全和非安全 HTTP 端口。应用程序服务器启动时,servlet 将自动启动。因为异步响应 servlet 不执行基于角色的授权检查,所以将仅执行用户认证检查。

异步响应 servlet 支持 HTTP 和 HTTPS 协议。由于 servlet 继承应用程序服务器的 SSL 配置,因此配置应用程序服务器时也会配置此 servlet。异步响应 servlet 不受异步响应侦听器使用的定制 HTTP 和 SSL 端口属性的影响,且仅在应用程序服务器的应用程序端口上运行。

过程

  1. 确定是否希望 JAX-WS 客户机使用 HTTP 或 HTTPS 传输机制。
  2. 配置 Web 容器传输链以修改应用程序服务器的 SSL 配置。 servlet 继承这些设置。请阅读关于配置传输链的内容,以了解如何配置 Web 容器传输链。

结果

异步响应 servlet 已配置为启用 JAX-WS 客户机来接收 HTTP 或 HTTPS 传输协议上的异步响应。
避免故障 避免故障: 将新的应用程序服务器添加到环境中时,异步响应 Servlet 将自动重新启动,以便可以为新应用程序服务器更新 deployment.xml 文件。 如果应用程序在异步响应 Servlet 重新启动时接收到入局响应,那么该入局响应可能失败并发生 HTTP 404 错误。gotcha
避免故障 避免故障: 如果客户机安装在已启用应用程序安全性的 WebSphere® Application Server 中,那么您需要遵循以下步骤来配置服务提供程序以使 JAX-WS 服务返回异步响应:
  1. 展开服务 > 策略集,然后单击应用程序策略集 > 新建以创建新的策略集。
  2. 常规属性面板上,指定新策略集的名称和简要描述。
  3. 策略下,单击添加并从下拉列表中选择 HTTP 传输。单击保存
  4. 展开服务 > 策略集,然后单击常规提供程序策略集绑定 > 新建
  5. 指定绑定配置名称描述字段。单击添加并从下拉列表中选择 HTTP 传输
  6. 出站异步服务响应的基本认证下,输入已认证用户的用户名和密码。单击应用,然后单击保存
  7. 展开应用程序 > 应用程序类型,然后单击 WebSphere 企业应用程序 > your_application_name。在 Web Service 属性下面,单击服务提供程序策略集和绑定
  8. 选择 your_web_service,单击连接,然后选择在步骤 3 中创建的策略集。再次选择 your_web_service,单击指定绑定,然后选择在步骤 6 中创建的绑定。单击保存
gotcha

指示主题类型的图标 任务主题



时间戳记图标 最近一次更新时间: last_date
http://www14.software.ibm.com/webapp/wsbroker/redirect?version=cord&product=was-nd-mp&topic=twbs_httpasyncrespservlet
文件名:twbs_httpasyncrespservlet.html