使消息流能够感知名称空间

本主题描述了如何使消息流能够感知名称空间。

如果已经从 WebSphere MQ Integrator Broker V2.1 迁移,您可能编写了处理 XML 消息(这些消息使用 XML 名称空间)的消息流。在 V2.1 中,解析这类 XML 消息的方法与 WebSphere Message Broker 所用的方法不同。虽然由 WebSphere Message Broker 托管时,这类消息流仍可以继续正确运行,但最好通过执行以下步骤进行升级,使它们能够感知名称空间。

  1. 纠正消息模型。
    如果使用 MRM 域,您已经建模不确定的 XML 消息。创建一个新的消息集,确保已经设置使用名称空间属性并使用与原名相同的名称创建了 XML 物理格式。要考虑两种情况:
    • XML 消息由 XML 模式进行描述。将 XML 模式导入新的消息集。这将自动创建一个新的具有名称空间感知的消息定义文件。
    • XML 消息是手动建模的。在期望目标名称空间(在向导的最后一页中指定它)中创建一个新的消息定义文件,然后使用编辑器重新创建消息模型。
      • 不要象 V2.1 中那样设置元素的 XML 名称属性。它仍应保留缺省值。
      • 不要使用以“xsi_”或“xmlns_”开头的名称重新创建任何元素或属性;解析器会自动处理所有这些内容。
      • 将 XML 属性重新创建为模型中的属性(而不是将元素的 XML 呈现属性设置为 XMLAttribute)。
  2. 纠正消息流。
    • 如果使用 MRM 域,将对消息集的任何引用更改为输入节点或 Compute 节点。
    • 如果使用 XML 域,将它更改为输入节点和 ESQL 语句中的 XMLNS 或 XMLNSC 域。这些域能够感知名称空间;而原始 XML 域无法感知且不推荐使用。
    • 将引用消息中元素的 ESQL 路径更改为正确的能够感知名称空间的语法。ESQL 编辑器内容辅助功能有助于自动创建名称空间常量(如果消息模型存在)。
  3. 部署纠正后的消息流和新消息集。

    将纠正后的资源添加到新的代理归档文件,并将它部署到目标代理执行组。如果消息流接收到的 XML 消息包含指定消息集的 MQRFH2 头,必须在步骤中更改发送应用程序。

您已将消息流升级为能够感知名称空间。

相关概念
消息模型中的名称空间
从 XML 模式导入以创建消息定义
将 XML 模式导入禁用名称空间的消息集
MRM 域
XML 域
相关任务
创建消息集项目
创建消息定义文件
部署消息流应用程序
将文件添加至代理归档
相关参考
ESQL 编辑器
声明 | 商标 | 下载 | 书库 | 支持 | 反馈
Copyright IBM Corporation 1999, 2006 最后一次更新时间:2006/08/14
ah20280_