当后端系统和 WebSphere Partner Gateway 相互发送消息时,双方必须使用相同的消息传输协议。消息传输协议定义了 发送消息时所用的通信协议。
WebSphere Partner Gateway 通过它的后端集成接口与后端系统进行通信。表 11 列出了该后端集成接口支持的传输协议。
传输协议 | 了解更多信息 |
---|---|
HTTP 或 HTTPS | HTTP 传输协议 |
文件系统文件 | 文件系统协议 |
JMS | JMS 协议 |
表 12 显示了中心向后端系统发送文档时的封装类型和业务协议所支持的传输协议。
封装类型 | 业务协议 | HTTP 或 HTTPS? | JMS? | 文件系统? |
---|---|---|---|---|
后端集成 | RosettaNet(RNSC) | 是 | 是 | 否 |
二进制 | 是 | 是 | 否 | |
EDI(请参阅 表 14 以获取有关 EDI 的信息) | ||||
XML | 是 | 是 | 否 | |
ROD | 是 | 是 | 否 | |
无 | EDI(请参阅 表 14 以获取有关 EDI 的信息) | |||
仅 cXML | 是 | 否 | 否 | |
仅 SOAP | 是 | 否 | 否 | |
二进制 | 是 | 是 | 是 | |
XML | 是 | 是 | 是 | |
ROD | 是 | 是 | 是 |
表 13 显示了后端系统向中心发送文档时的封装类型和业务协议所支持的传输协议。
封装类型 | 业务协议 | HTTP 或 HTTPS? | JMS? | 文件系统? |
---|---|---|---|---|
后端集成 | RosettaNet(RNSC) | 是 | 是 | 否 |
XML | 是 | 是 | 否 | |
二进制 | 是 | 是 | 否 | |
ROD | 是 | 是 | 否 | |
无 | 仅 XML | 是 | 是 | 是 |
EDI(请参阅 表 14 以获取有关 EDI 的信息) | ||||
仅 cXML | 是 | 否 | 否 | |
仅 SOAP | 是 | 否 | 否 | |
仅二进制 | 否 | 否 | 否 | |
仅 ROD | 是 | 是 | 是 |
表 14 显示了各种 EDI、XML 和面向记录的数据(ROD)文档所支持的传输协议和封装类型。
前面的表中列出了中心与后端系统之间有效的传输协议。中心可以使用其他传输协议来发送文档或从参与者那里接收文档。例如,中心可以通过使用 FTP 脚本传输将一个文档发送到远程 FTP 服务器。它也可以用 FTP 脚本传输接收文档。中心配置指南中描述的 FTP 脚本传输可用于通过因特网发送和接收文档,但是它必须用于发送和接收来自增值网络(VAN)的文档。
为了使用 HTTP 协议发送消息,WebSphere Partner Gateway 使用了 HTTP/S 1.1。为了接收来自后端系统的消息,WebSphere Partner Gateway 既支持 HTTP/S V1.0 也支持 V1.1。
HTTP 消息可以包括集成封装属性。 是否包括这些属性取决于与参与者连接相关的封装类型,如下所述:
当在 WebSphere Partner Gateway 和应用程序之间发送 HTTP 或 HTTPS 消息以进行异步交换时,会发生以下步骤:
如果交换是同步的(例如,对于 SOAP 或 cXML),在相同的 HTTP 连接中,会返回一个带 HTTP 200 消息的响应。
要使用 HTTP 协议将消息发送到 WebSphere Partner Gateway,后端系统采用如下步骤:
对于后端集成封装,后端系统添加了 WebSphere Partner Gateway 所需的协议头属性。
要在这个方向上启用 HTTP 消息交换,使用社区控制台的“目标详细信息”页,为入站文档设置一个中心的目标。该目标指定一个 URL。后端系统需要知道这一地址以将文档发送到中心。
要使用 HTTP 协议从 WebSphere Partner Gateway 接收消息,后端系统采用如下步骤:
要在这个方向上启用 HTTP 消息交换,使用社区控制台的“网关”页来设置网关,指出在哪里将文档传递到后端系统。
JMS 协议基于 Java(TM)消息服务(JMS),它通过事务性的和持久的 JMS 队列来传递消息,JMS 队列可由诸如 IBM WebSphere MQ 之类的工具提供。JMS 协议支持下列 JMS 消息类型:
在 JMS 协议中,一个系统可以向另一个系统发送 JMS 消息。在第二个系统接收到该消息后,就从队列中除去它。从这时起,接收系统可以异步地处理消息。
JMS 消息可以包括集成封装属性。 是否包括这些属性取决于与参与者连接相关的封装类型,如下所述:
除二进制消息外,WebSphere Partner Gateway 支持在需要时发送和接收任何一种封装类型的 JMS 消息。应用程序所接收的二进制消息必须含有后端集成封装。反之则不然,因为 WebSphere Partner Gateway 支持使用任何一种封装类型向应用程序发送二进制消息。
要设置您的 JMS 环境,需要下列提供程序。
JMS 提供程序提供了支持消息传递的 JMS API 实施。WebSphere MQ 是 JMS 提供程序的一个示例,本文档和其他 WebSphere Partner Gateway 文档所描述的过程都使用了该示例。尽管可以使用其他的 JMS 提供程序,要注意,WebSphere Partner Gateway 仅采用 WebSphere MQ 进行了测试。还要注意 WebSphere Partner Gateway 不支持 WebSphere 6.0 缺省的消息传递提供程序。
WebSphere MQ 提供 JMSAdmin 程序,它可以让您构造 JMS 需要的对象 - JMS 连接工厂和 JMS 队列对象。当构造这些对象时,它们的引用存储在 JNDI 中。
JNDI 提供程序提供 JNDI 的实施,用于存储对 JMS 对象的引用。
对于使用 JMS 协议将业务文档发送到 WebSphere Partner Gateway 的后端应用程序,必须要配置一个 JMS 目标。JMS 目标从 JMS 队列接收消息,并且该文档被传入 WebSphere Partner Gateway 工作流。JMS 目标配置包括访问 JNDI 的必需参数,以及 JMS 对象的名称。对于与后端系统的集成,JMS 目标中配置的队列是后端系统发送 JMS 消息的队列。
类似地,WebSphere Partner Gateway 使用 JMS 网关将业务文档发送到一个队列,参与者从这个队列接收文档。因此,为将消息发送到后端系统,要确保在社区管理者的概要文件中配置了一个 JMS 网关。该网关应当被配置为将文档发送到后端系统的接收队列。JMS 网关配置包括访问 JNDI 的必需参数,以及 JMS 对象的名称。
要利用 JMS 传输协议进行通信,WebSphere Partner Gateway 和后端应用程序需要通信的每个方向都有一个 JMS 队列。 因此,您必须采取下列步骤来提供相应的 JMS 队列:
另外,也可以使后端系统驻留的计算机和 WebSphere Partner Gateway 驻留的计算机上都有一个队列管理器。 在这种情况下,使用设置通道将两个队列管理器结合起来。 使用这种方法,每一方都不需要使客户机连接到网络上。
使用 WebSphere MQ V5.3 配置 JMS 传输协议机制的指示信息在中心配置指南中提供。
要使用 JMS 协议将消息发送到 WebSphere Partner Gateway,后端系统将采用如下步骤:
对于后端集成封装,应用程序添加必需的 JMS 头属性。
要使用 JMS 协议从 WebSphere Partner Gateway 接收消息,后端系统将采用如下步骤:
文件系统协议使得 WebSphere Partner Gateway 能够通过把消息放入已定义的目录结构中来发送消息。WebSphere Partner Gateway 通过从目录结构中读取消息来接收它们。文件系统协议仅支持“无”封装类型。
要使用文件系统协议将消息发送到 WebSphere Partner Gateway,应用程序必须采用下列步骤:
要在这个方向启用文件系统消息,使用社区控制台的“目标详细信息”页面来为入站文档设置一个目标。消息的目标决定了 WebSphere Partner Gateway 轮询的目录。当创建目标时,WebSphere Partner Gateway 会为该目标创建一个 Documents 目录及其子目录,如下所示:
<doc_root> Documents Production Test <other destination types>
WebSphere Partner Gateway 定期轮询 Documents 目录及其子目录以检测消息文件。如果它发现消息,则 WebSphere Partner Gateway 持久存储该消息,然后从目录中删除该消息。然后,WebSphere Partner Gateway 按正常方式处理该消息。请参阅中心配置指南以获取关于如何创建目标的信息。
要使用文件系统协议接收消息,应用程序应当执行如下步骤:
要在这个方向启用文件系统消息交换,使用社区控制台的“网关”页面来设置网关,该网关指出文档的目标。WebSphere Partner Gateway 将消息文件放入网关定义的 Documents 目录。通过根据网关定义目的地目录,每个参与者连接都可以拥有一个不同的目录。 要获取关于网关的信息,请参阅中心配置指南。