【问题标题】:Possible causes of BizTalk's WrongBodyPartExceptionBizTalk 的 WrongBodyPartException 的可能原因
【发布时间】:2020-10-13 11:28:47
【问题描述】:

我不断收到 WrongBodyPartException 多部分消息“msgWrapper”在一个编排中具有正文部分“Body”,预期正文部分“Head”,而同一应用程序中的另一个几乎相同的部分工作正常。

我已经调试、重新部署、尝试了很多次,直到一位同事发现几乎不可能看到的差异。该错误位于 BizTalk 业务流程的代码生成器中(请参阅解决方案)。首先是问题描述:

  1. 我定义了两个多部分消息类型,几乎相同,但正文部分有不同的模式。
  2. 使用这些多部分消息类型的编排几乎相同,但与此问题无关。
  3. 运行两个业务流程。对我来说,一个总是按预期工作,而另一个总是挂起并出现上述异常消息。

【问题讨论】:

    标签: biztalk biztalk-2016


    【解决方案1】:

    在我的情况下,答案是其中一种多部分消息类型首先使用正文部分创建,然后是头部,而另一种则以相反的方向创建。然而,这完全隐藏在 UI 中。您无法查看存储了 Body 和 Head 的顺序,因为它们在编排视图中总是以相同的顺序出现。

    但是,如果您设法以某种方式阻止正在运行的消息,则可以通过检查消息详细信息并比较消息部分来查看差异。此屏幕截图显示左侧的失败情况和右侧应用修复后的工作情况:

    要修复这个错误,我必须在 XML 视图中打开我的 Orchestration 的 .odx 文件并将消息部分移到那里。这是解决问题的代码更改的比较:

    结论是消息部分的顺序很重要,但无法在编排视图中看到。对开发人员来说,实际上存在顺序上的差异是隐藏的。

    【讨论】:

    • 你是个英雄——难以置信!非常感谢!!!
    猜你喜欢
    • 2012-09-18
    • 1970-01-01
    • 2010-09-13
    • 2013-01-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多