从 ESB 工具包行程调用时 BRE 规则未触发

BRE rule not firing when called from ESB Toolkit Itinerary

运行一个BizTalk 2013r2的解决方案,我的行程如下:

根据所选内容一切正常"Auth Endpoint Detail"

这是调用 BRE,传递以下消息:

<ns0:MasterCardRequest xmlns:ns0="http://www.EsbToolkit.TargetWebService/Authorization/MasterCardRequest">
  <ns0:AuthAmount>300</ns0:AuthAmount>
  <ns0:CardNumber>1111-1111-1111-1111</ns0:CardNumber>
  <ns0:OrderNumber>130</ns0:OrderNumber>
</ns0:MasterCardRequest>

这应该会触发以下 "MasterCard" 规则 - 然后会在消息的上下文中发送端点值:

问题是 - 它没有发射!当我从 BRE Composer 中手动 "Test Policy" 时,它确实会触发。但是,当我通过 BizTalk 运行 一条消息并检查 DebugView 时,我看到以下内容:

我已经仔细检查过是否部署了正确的策略版本。 我将非常感谢关于规则未触发的任何想法。

您可以检查 BRE 规则集中定义的文档类型 属性 是否与调试视图中显示的 DocType 匹配。 BRE 解析器机制没有很好的记录,也许这会有所帮助:which is the meaning of recognize message format property?

此外,当 doctype 是通用的时,建议避免在规则中使用命名空间名称。