I have come across a peculiar issue with BizTalk 2006 R2 and generating
ACKs.
Here is my setup.
I have an orchestration that consumes an ADT A03 23 message type. This
orchestration receives the message inbound and will map a ACK out. This is
done with two maps, MSH and ACK Body.
The orchestration is bound to a two-way receive ****t with a receive
location
using MLLP.
I am submitting messages with the MLLP test tool.
Here is what is happening.
I can submit a message from the test tool and BizTalk will route the
message
successfully to my orchestration. The orchestration will then process the
map
successfully and attempt to send the acknowledgment.
Here is where the send ****t fails for me.
I receive 4 new error messages in the event view which look like the
following:
Error details: There was a failure executing the response(send) pipeline:
"BTAHL72XPipelines.BTAHL72XSendPipeline, BTAHL72XPipelines,
Version=1.3.0.0,
Culture=neutral, PublicKeyToken=31bf3856ad364e35" Source: "BTAHL7 2.X
Assembler" Receive ****t: "rprtECIN_ADT_TwoWay_In" URI: "localhost:12345"
Reason: Message does not contain a part with name MSHSegment
Error details: There was a failure executing the response(send) pipeline:
"BTAHL72XPipelines.BTAHL72XSendPipeline, BTAHL72XPipelines,
Version=1.3.0.0,
Culture=neutral, PublicKeyToken=31bf3856ad364e35" Source: "BTAHL7 2.X
Assembler" Receive ****t: "rprtECIN_ADT_TwoWay_In" URI: "localhost:12345"
Reason: Object reference not set to an instance of an object.
If I look at the suspended message, I can clearly see that there is a
MSHSegment segment and a BodySegments segment. I have ran the msh through
the
schema validation tool in visual studio and it validates properly.
This is the same technique that I have used in BizTalk 2004 and BizTalk
2006
to generate an acknowledgment. I am not sure why this would not work any
more.
Any help would be appreciated.


|