BizTalk 2013 R2:接收管道错误

BizTalk 2013 R2: Error in receive pipeline

在另一台服务器上部署 BizTalk 解决方案后遇到问题。 错误在下面突出显示:-

There was a failure executing the receive pipeline: "BTAHL72XPipelines.BTAHL72XReceivePipeline, BTAHL72XPipelines, Version=1.3.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" Source: "BTAHL7 2.X Disassembler" Receive Port: "HL7_25_ADT_A02_ReceivePort" URI: "******Some Location*******" Reason: Field not found: 'Microsoft.Solutions.BTAHL7.Pipelines.MessageUtils.VersionforAck24'.

PS: 我已经在服务器上安装了两次 BizTalk 2013 R2 with HL7 Accelerator R2。

我不清楚它是否是自定义管道,但如果是,那么您应该将自定义管道组件复制到路径

C:\Program Files (x86)\Microsoft BizTalk Server 2013 R2\Pipeline Components

如果您在开发环境中并且厌倦了复制 dll 那么一个好方法是:
您的 dll mus 必须部署在 GAC 中。然后一个更简单的方法是使用 gacutil.exe 来部署它。在 Visual Studio 的帮助下,您可以通过 post 构建事件

实现此目的

"C:\Program Files (x86)\Microsoft SDKs\Windows\v8.0A\bin\NETFX 4.0 Tools\gacutil.exe" /i $(TargetPath)

之后你不必复制任何dll,但在生产中这可能会导致你忘记复制,小心。

在我看来是安装问题,我 运行 BizTalk 2013 R2 with HL7 Accelerator 没有任何问题。一些建议

  1. 很可能您使用的是 Microsoft.Solutions.BTAHL7.PipelineCommon.dll 的旧版本(可能是 2010 版本)。确保其版本为 3.11.158.0。此程序集可在“\Program Files (x86)\Microsoft BizTalk 2013 R2 Accelerator for HL7\Bin”文件夹中找到。
  2. 卸载HL7加速器并重新安装,确保使用2013 R2 iso文件

程序集 Microsoft.Solutions.BTAHL7.PipelineMessageCore 是否已部署?在 All Artifacts->Resources 下检查。如果它在那里,请尝试重新部署它。

同时在“所有工件”->“架构”下查看该程序集的架构,并确保它具有节点。如果没有,您肯定必须从原始安装版本重新部署,或者至少撤消对 rename/remove 该节点所做的任何修改。

之前我们使用的是 window 服务器 2012。

In order to fix this issue, we did installation for window server 2012 R2, Sql server 2014, VS 2013 and Framework 4.5.

感谢大家帮助解决这个问题。