本主题包含以下部分:
使用 Validate 节点可以检查消息是否如预期的那样到达它的输入终端。
您可以检查消息是否具有预期的消息模板属性(即,消息域、消息集和消息类型)。
您还可以通过选择消息验证,检查消息的内容是否正确。
检查 | 域 |
---|---|
检查消息域 | 所有域 |
检查消息集 | 仅限 MRM 和 IDOC |
检查消息类型 | 仅限 MRM |
验证消息体 | 仅限 MRM 和 IDOC |
您可以针对一个或多个消息域、消息集或消息类型检查消息。仅当您选中某个属性相应的复选框时才会检查该属性,这表示包含空字符串的属性可以进行比较。
您可以通过对验证属性给定值来检查消息的内容。将验证属性设置为除无(该值为缺省值)以外的值时才会发生验证。
要使验证失败从解析器返回到 Validate 节点,必须将故障操作属性设置为异常或异常列表。否则,将只是记录验证失败。
如果通过了所有指定的检查,将通过该节点的 Match 终端传播消息。
如果任何检查失败,则通过 Failure 终端传播消息。如果 Failure 终端未连接到某些故障处理过程,则抛出异常。
Validate 节点在工作台中由以下图标表示:
在允许消息进入流的其余部分之前,可以使用 Validate 节点来确认消息是否具有正确的消息模板属性和有效内容。这表示后续节点可以依赖消息的正确性,而不必执行它们自己的错误检查。
您还可以使用 Validate 节点来确保消息在消息流中进行适当的路由。例如,您可以将它配置为,使请求购买股票的消息通过的路径与请求卖出股票的消息所需的路径不同。
另一个路由的示例是,从总公司的全体职员接收电子消息。这些消息用于多个方面,例如请求技术支持或办公用品,或告知您新客户的线索。可以自动处理这些消息,因为职员填写了标准表格。如果您想独立于收到的其他消息单独处理这些消息,请使用 Validate 节点来确保此消息流仅处理具有特定消息类型的职员消息。
将 Validate 节点的实例放入消息流中后,可以对它进行配置。右键单击编辑器视图中的节点,然后单击属性。将显示该节点的基本属性。
对于必须为其输入值的所有必需属性(没有定义缺省值的属性),在属性对话框上都会用星号作标记。
按如下所示配置 Validate 节点:
对于 XML、JMS、MIME 和 BLOB 解析器,将集保留为空白。
除非使用的是 MRM 解析器,否则将类型保留为空白。请注意,IDOC 解析器将从消息自动获取消息类型。
有关更多详细信息,请参阅验证消息和MRM 域中消息的验证属性。
单击取消以关闭对话框,并废弃对属性所作的所有更改。
下表中描述了 Validate 节点的终端。
终端 | 描述 |
---|---|
In | 接受供节点处理的消息的输入终端。 |
Failure | 如果入局消息与指定的属性不匹配,则这是消息路由到的输出终端。 |
Match | 如果入局消息与指定的属性匹配,则这是消息路由到的输出终端。 |
下表描述 Validate 节点的属性;标题为 M 的列表示属性是否必要(没有定义缺省值时,如果必须输入值,则在属性对话框上标注星号),标题为 C 的列表示属性是否可配置(将消息流添加到 BAR 文件以部署它时可以更改该值)。
下表中描述了 Validate 节点的基本属性。
属性 | M | C | 缺省值 | 描述 |
---|---|---|---|---|
域 | 否 | 否 | 域的名称。 | |
检查域 | 是 | 否 | 已清除 | 是否要针对“域”属性检查入局消息。如果您选中该复选框,则执行此操作。 |
集 | 否 | 否 | 入局消息所属消息集的名称或标识。 | |
检查集 | 是 | 否 | 已清除 | 是否要针对“集”属性检查入局消息。如果您选中该复选框,则执行此操作。 |
类型 | 否 | 否 | 消息标识。 | |
检查类型 | 是 | 否 | 已清除 | 是否要针对“类型”属性检查入局消息。如果您选中该复选框,则执行此操作。 |
下表中描述了 Validate 节点的验证属性。请参阅MRM 域中消息的验证属性,以获取这些属性的完整描述。
属性 | M | C | 缺省值 | 描述 |
---|---|---|---|---|
验证 | 是 | 是 | 无 | 验证是否发生。有效值为无、内容和值、内容和继承。 |
故障操作 | 是 | 否 | 异常 | 验证失败后将发生什么操作。只有将验证设置为内容或内容和值,才可以设置该属性。有效值为用户跟踪、本地错误日志、异常和异常列表。 |
包含所有值约束 | 是 | 否 | 选中 | 无法编辑此属性。所选的复选框指出的缺省操作,即内容和值 验证中包含的基本值约束检查。 |
修改 | 是 | 否 | 无 | 无法编辑此属性。有效值为无和全部。 |
下表中描述了 Validate 节点的描述属性。
属性 | M | C | 缺省值 | 描述 |
---|---|---|---|---|
简短描述 | 否 | 否 | 节点的简要描述。 | |
详细描述 | 否 | 否 | 描述消息流中节点用途的文本。 |