【问题标题】:Receive Port is not showing up in the list of Activation Subscriptions接收端口未显示在激活订阅列表中
【发布时间】:2015-12-10 20:42:53
【问题描述】:

我正在解决一个非常常见的 BizTalk 错误,该错误会导致传输/路由失败(见下文)。即使我的接收位置已启动,它似乎也没有在监听任何内容。当我对所有激活订阅运行查询时,接收端口未显示在列表中。我无法弄清楚为什么它没有订阅我的发送端口。

错误:
无法路由已发布的消息,因为未找到订阅者。如果尚未征用订阅编排或发送端口,或者未提升订阅评估所需的某些消息属性,则会发生此错误。请使用 Biztalk 管理控制台解决此故障。

【问题讨论】:

    标签: biztalk biztalk-2013


    【解决方案1】:

    单向接收位置没有活动订阅,只有编排和发送端口有。对于一种方式,您的发送端口应该监听您的接收端口,而不是您的接收端口到您的发送端口。

    如果是请求/响应端口,请参阅下面的部分

    单向接收位置

    接收位置从外部位置获取,并通过相关的接收端口并发布到消息框中。

    由于您的错误清楚地表明消息已发布到消息框,因此接收端口显然正在工作(尽管可能不正确)或者它已从发送端口或业务流程发布回来。

    你要检查的是

    1. 使用 BizTalk Administrator 的挂起消息的上下文属性
    2. 属于您希望处理消息的发送端口/编排的订阅
    3. 比较两者,看看有什么不匹配的

    可能性是

    1. 您的接收端口没有提升您期望的属性。检查架构上的接收管道和提升的属性。如果您的管道设置为直通,则只有一些标准提升的属性将在那里,并且没有消息类型或模式中的提升属性,如果您需要这些提升的属性,请将您的管道设置为 XMLReceive 或带有 XML 反汇编器的自定义管道或平面文件。
    2. 您的发送端口/业务流程未处于登记状态,如果它们未登记,则不会为它们发布订阅。招募或启动他们。
    3. 您的发送端口/编排订阅错误(与消息上下文属性不匹配),请更正它们以使其匹配。

    请求/响应接收端口

    对于请求响应接收位置/端口,它会为查找 BTS.EpmRRCorrelationToken(其中包含主机实例、端口和 GUID 的详细信息)和 BTS.RouteDirectToTP == True 的消息创建实例订阅

    如果您有一个订阅请求/响应接收端口的请求/响应发送端口,或者如果您在编排中使用请求/响应端口,那么它开箱即用。如果您在编排中使用单独的接收发送端口,则需要在消息构造形状中手动设置上述属性。

    Messaging-only request-response correlation

    【讨论】:

      【解决方案2】:

      感谢您对接收地点的说明。我是 BizTalk 的新手,因为我最近继承了支持它的角色。该问题最终成为接收位置的端点行为扩展中的错误引用。

      【讨论】:

      • 投了反对票。你问的问题正是关于 Receive Ports 订阅的问题,Dijkgraaf 彻底回答了。您自选的答案增加了什么?如果你所做的事情对订阅有任何影响(我会学到新的东西)或者它不相关(那么它不应该是选择的答案),我就会徘徊。
      • 我不太确定我怎么能更清楚。我发布了我收到的错误并描述了我为解决错误而采取的措施。在接收位置的端点行为扩展配置中存在对无效 WSDL 操作名称的引用。这会阻止发送端口正确订阅。
      猜你喜欢
      • 1970-01-01
      • 2020-08-14
      • 1970-01-01
      • 2015-07-24
      • 2018-02-06
      • 2021-03-15
      • 1970-01-01
      • 1970-01-01
      • 2011-01-27
      相关资源
      最近更新 更多