作为服务集成总线的入口点或出口点的 WS-Notification 的拓扑

除了能够在 WS-Notification 生产者与使用者之间传递信息以外,WebSphere® Application Server 中提供的 WS-Notification 支持还充当服务集成总线的入口点或出口点。WS-Notification 应用程序发布的事件通知被插入到服务集成总线中,任何其他连接到该总线的应用程序都可以修改、重新路由或使用他们。同样,WS-Notification 使用者可以接收服务集成总线客户机(例如 JMS)发送的发布内容。

可以对 WS-Notification 进行配置,以使 Web Service 应用程序接收由服务集成总线的其他客户机(例如 JMS 客户机)生成的事件通知。同样,Web Service 应用程序可以生成供其他类型客户机接收的通知。通过创建允许在总线的 Web Service 与非 Web Service 客户机之间共享消息的永久主题名称空间来完成此配置,如为 WS-Notification 应用程序提供对现有总线主题空间的访问权所述。

在下图中,WS-Notification 发布者将事件通知插入到 JMS 消息使用者所接收到的通知代理中。反过来,JMS 消息生产者可以发布由通知使用者接收的消息。通过使用 SOAP over HTTP 将消息从发布者传递到通知代理,接着通过 WebSphere Application Server 传递到 JMS 提供程序,然后使用 JFAP 传递到 JMS 消息使用者。 相反,使用 JFAP 将消息从 JMS 消息生产者传递到 JMS 提供程序,接着通过 WebSphere Application Server 传递到通知代理,然后使用 SOAP over HTTP 传递到通知使用者。

图 1. 从发布者传递到 JMS MessageProducer 的消息路径的示例
此图用四周的文本描述。

与 JMS 消息类型进行交互

WS-Notification 服务既负责将消息插入到服务集成总线中(以响应从 Web Service 接收的通知操作)也负责从总线中接收消息(以便将消息传递至 Web Service 以响应预订操作)。

WS-Notification 服务插入的消息是 JMS 字节消息类型的消息,因此,当 Web Service 对 WS-Notification 服务点调用通知操作时,将使用 UTF-8 编码把该消息的应用程序内容插入到 JMS 字节消息的主体中。

对于 WS-Notification 服务在响应预订时接收的消息来说,将执行反向转换。会将接收的消息转换为适当的 JMS 消息类型。如果适当的类型确定为字节消息类型,就会使用 UTF-8 编码将消息主体转换为字符串以检查代码,然后再将该消息发送到发出请求的 Web Service。

在转换为字符串时,如果转换后的字节消息字符串不包含 XML 元素,就会将该消息视为来自不支持 WS-Notification (JMS) 的应用程序并废弃该消息。

如果确定接收的消息是文本消息,就会抽取该消息的主体内容,然后按转换后的字节消息内容的处理方式来进行处理。这意味着要向 WS-Notification 应用程序提供事件通知的 JMS 应用程序可以根据需要来选择将内容作为字节消息或文本消息来发送。

如果接收的消息既不是字节消息也不是文本消息,就会将其视为来自不支持 WS-Notification (JMS) 的应用程序并废弃该消息。

注: 如果订户应用程序使用消息内容过滤,并且这些应用程序编写为指定 XPath V1.0 SelectorDomain,那么它们可过滤发布的消息内容(这些发布的类型为 JMS TextMessage 或 BytesMessage)。

指示主题类型的图标 概念主题



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