Web service、WSDL 和消息流

此处的术语 Web service 是指 WSDL 描述的,可通过代理支持的某种传输机制(一般是 HTTP、JMS 或 MQ)进行访问的接口。

关于传输机制的描述,请参阅:

WSDL

WSDL 定义的逻辑部分描述了将交换并可以由代理导入以在设计时创建消息模型的业务消息的格式。(请参阅从 WSDL 导入。)

WSDL 定义的实际部分描述服务的实际端点和用于交换消息的协议。实际绑定信息不在设计时导入。您必须在消息流中实现该协议和端点详细信息,如下所示:
  • 使用绑定 SOAP/HTTP,在这种情况下,您将使用 HTTP 节点实现流,如果流实现 Web service,则使用 HTTPInput 和 HTTPReply,如果流调用 Web service,则使用 HTTPRequest。
  • 使用绑定 SOAP/JMS,这种方法使用 JMS 或 MQ 节点实现流。
  • 您可以配置消息流,它使用一种传输机制从客户机接收输入消息,并与 Web service 或使用另一种传输机制的旧应用程序进行交互。
  • 您可以将消息传播到多个位置 - 例如,可能首先使用 MQOutput 节点将 HTTPReply 节点返回到客户机的 Web service 响应发送到审计应用程序(发送时对消息头进行必要的调整)。

也可以采用现有的消息模型,并生成 WSDL 定义;在这种情况下,您必须提供实际绑定信息。(请参阅从消息集生成 Web Service 定义。)

此处讨论的 WSDL 绑定特指 WSDL 生成器向导直接支持的那些绑定:
  • SOAP/HTTP
  • SOAP/JMS
即使用 SOAP 消息格式的绑定,它们在 MRM 域中可以解析为 XML。但是请注意,Web service 的一般定义比这更广,它允许 SOAP 以外的消息格式(例如 XML-RPC)和 HTTP 或 JMS 之外的传输机制(例如 SMTP)。
您的起点通常是:
  • 显示给客户机的现有消息模型(需要生成 WSDL)
  • 现有的 WSDL 定义,它将使代理能够与 Web service 交互(需要导入 WSDL)

在这两种情况中,代理将在运行时根据生成或在设计时导入的 WSDL 接收消息。

(关于 WSDL 的更多信息,请参阅 WSDL 与消息模式的关系WSDL 验证)。

方案

代理消息流可以:
  • 调用外部 Web service
  • 实现 Web service
  • 执行以上两种操作
如果代理需要与现有的 Web service 交互:
可以使用新的 WSDL 导入器将用于该服务的 WSDL 定义导入到消息集中。生成的消息集包含消息定义(对 SOAP 封包建模)和相应 SOAP 消息的内容。流开发者可以使用这些定义验证和处理入局消息,例如,定义映射以将 SOAP 请求消息转换成 SOAP 响应消息。
如果代理已有将用在 Web service 上下文中的消息定义:
代理可以将那些定义导出为 WSDL 文件,该文件可以被其他工具箱(例如,.NET)使用。
要导入 WSDL:
使用“新建消息定义文件”向导上的新选项,或使用命令 mqsicreatemsgsetsfromwsdl。(请参阅导入数据结构
要导出 WSDL:
使用“消息类别文件”向导和消息类别编辑器(请参阅使用消息类别文件),然后调用 WSDL 生成器向导(请参阅从消息集生成 Web Service 定义)设置类别。

本部分的页面概述了主要的 Web service 技术:

相关概念
WebSphere MQ Web Services 传输方式
生成 WSDL
消息流概述
相关任务
开发消息流
部署
相关参考
内置节点
声明 | 商标 | 下载 | 书库 | 支持 | 反馈
Copyright IBM Corporation 1999, 2006 最后一次更新时间:2006/08/14
ac34520_