最近我一直在对 BizTalk 应用程序进行一些更改,一切进展顺利,我将它从开发环境转移到了测试环境,我正在处理的应用程序仍然运行良好。
问题是,一个现有的应用程序突然收到一条 HL7 消息时会出现以下错误:
Fatal error encountered in 2XDasm. Exception information is Object reference not set to an instance of an object.
其次是:
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: "RP.MyPort.HL7v2.ORU" URI: "0.0.0.0:11001" Reason: Object reference not set to an instance of an object.
紧随其后的是:
A message received by adapter "MLLP" on receive location "RPL.MyLocation.HL7v2.ORU.MLLP" with URI "0.0.0.0:11001" is suspended.
Error details: 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: "RP.MyPort.HL7v2.ORU" URI: "0.0.0.0:11001" Reason: Object reference not set to an instance of an object.
MessageId: {7B940750-046A-4E63-9268-EF76F6458CFE}
InstanceID: {5FC204B1-69DE-433E-B90B-AB1E9F77B3B7}
这两个应用程序之间的唯一区别是,一个有效的是使用自定义管道组件,而出错的一个是使用默认的 BizTalk BTAHL72XReceivePipeline(正如您可能从错误中看到的那样。)