您的应用程序所交换的消息的特征指出了您必须使用哪个解析器。
WebSphere Message Broker 提供一系列消息解析器。每个解析器为在特定消息域(例如,XML)或消息头(例如,MQMD)中的消息处理消息体。
查看应用程序发送到代理的消息,并确定消息体数据所属的消息域,以便可在消息中设置正确的头或适当配置消息流的输入节点。
- 如果应用程序数据为 XML 格式
- 使用 MRM 域中的 XML 格式,或者 XML、XMLNS 或 XMLNSC 域。
通常,您会发现 MRM 域更具灵活性:
- 当解析消息时,逻辑消息树使用来自消息模型的类型。这允许 ESQL 表达式直接在数据上操作,而无需将其类型强制转换为正确的数据类型。支持在 CData 段中编码的数据,及十六进制和 base64 编码的二进制数据。
- 当您创建 ESQL 来配置 Compute、Database 或 Filter 节点时,ESQL 编辑器可以提供基于消息模型信息上的帮助。
- 当您创建映射来配置 DataDelete、DataInsert、DataUpdate、Extract、Mapping 或 Warehouse 节点时,映射编辑器可以提供基于消息模型信息的帮助。
- 如果应用程序来自旧的 C 或 COBOL 应用程序,或由固定格式的二进制数据(可能包括以 null 结束的字符串)组成
- 在 MRM 域中使用定制有线格式。
- 如果应用程序数据由格式化文本组成,或包含以 null 结束的字符串外的可变长度字段
- 在 MRM 域中使用标记定界的字符串格式。
- 如果使用 JMS API 创建应用程序数据
- 使用 XML 域或其中一个 JMS 域(JMSMap 和 JMSStream)。
- 如果应用程序数据的格式为 SAP IDoc
- 使用 IDOC 域。
- 如果应用程序数据为 MIME 格式,例如带附件的 SOAP 或 RosettaNet
- 使用 MIME 域。您可能需要使用其他解析器对消息的特定部分进行解析。例如,您可能使用 MRM XML 解析器对带附件消息的 SOAP 根进行解析。
- 如果您不了解或不需要了解应用程序数据的内容
- 使用 BLOB 域。