Discussion:
Errorhandling Sample in SDK
(too old to reply)
SalamElias
2008-03-24 13:00:01 UTC
Permalink
has anyone played with this sample? Ihave it upand running and need to
understand where I can find the filter that makes failed messages be routed
to the resubmit orchestration?
The orchestration is initialized with a RP called "ReceivefailedMessages"
and is configured as "Direct". In BTS admin console, Bindings we ca see other
RP is configured. So how tgis orchestration retreives the routed message?

Also, there is another irchestration called "SuspendMessage", when this
orchestration is activated? I have put some debug lines, in Debug view I
can't see anything coming out from this orchestartion nor in HAT.

Thanks in advance
WenJun Zhang[msft]
2008-03-25 10:18:39 UTC
Permalink
Hi Salam,

The sample is indeed a little bit difficult to be understood. Let me try my
best to explain more than the document.

As you can see, the port ReceiveExpenseReport is used to accept incoming
documents. The trick here is: a SendExpenseReport only subscribes the
documents which promoted properties department = Marketing and
correlationID = null. So other documents with different value in department
field will lead to *No Subscription exception*. In this case, BizTalk
routes these messages as failed message and further find subscriber for
them due to Failed Message Routing is enabled on the receive port.

The ResubmitLogic orchestration uses a direct binding port to subscribe
ErrorReport messages from BizTalk engine and filters the ones which
ReceivePortName = ReceiveExpenseReport (See the first Receive Shape's
property). This works because 'Enable routing for failed messages' is set
on the ReceiveExpenseReport port (Check this in BizTalk Admin console).

More references:

Using Failed Message Routing
http://msdn2.microsoft.com/en-us/library/aa578516.aspx

Also Matt Hall's Blog has an article of this which makes things more clear
than the sample:

BizTalk 2006 - Introduction to Error Handling
http://blogs.conchango.com/matthall/archive/2005/07/28/1894.aspx

As always, please let me know if you have further question on this.

Have a great day.

Sincerely,

WenJun Zhang

Microsoft Online Community Support

Delighting our customers is our #1 priority. We welcome your comments and
suggestions about how we can improve the support we provide to you. Please
feel free to let my manager know what you think of the level of service
provided. You can send feedback directly to my manager at:
***@microsoft.com.

==================================================
Get notification to my posts through email? Please refer to
http://msdn.microsoft.com/subscriptions/managednewsgroups/default.aspx#notif
ications.

Note: The MSDN Managed Newsgroup support offering is for non-urgent issues
where an initial response from the community or a Microsoft Support
Engineer within 1 business day is acceptable. Please note that each follow
up response may take approximately 2 business days as the support
professional working with you may need further investigation to reach the
most efficient resolution. The offering is not appropriate for situations
that require urgent, real-time or phone-based interactions or complex
project analysis and dump analysis issues. Issues of this nature are best
handled working with a dedicated Microsoft Support Engineer by contacting
Microsoft Customer Support Services (CSS) at
http://msdn.microsoft.com/subscriptions/support/default.aspx.
==================================================
This posting is provided "AS IS" with no warranties, and confers no rights.
SalamElias
2008-03-25 16:22:04 UTC
Permalink
Thanks for the info, yes I saw the details and red Matt blog.
However, still wondering what the 2nd orchestration is doing in the
errorhandling sample? any idea. I mean when it is activated
Post by WenJun Zhang[msft]
Hi Salam,
The sample is indeed a little bit difficult to be understood. Let me try my
best to explain more than the document.
As you can see, the port ReceiveExpenseReport is used to accept incoming
documents. The trick here is: a SendExpenseReport only subscribes the
documents which promoted properties department = Marketing and
correlationID = null. So other documents with different value in department
field will lead to *No Subscription exception*. In this case, BizTalk
routes these messages as failed message and further find subscriber for
them due to Failed Message Routing is enabled on the receive port.
The ResubmitLogic orchestration uses a direct binding port to subscribe
ErrorReport messages from BizTalk engine and filters the ones which
ReceivePortName = ReceiveExpenseReport (See the first Receive Shape's
property). This works because 'Enable routing for failed messages' is set
on the ReceiveExpenseReport port (Check this in BizTalk Admin console).
Using Failed Message Routing
http://msdn2.microsoft.com/en-us/library/aa578516.aspx
Also Matt Hall's Blog has an article of this which makes things more clear
BizTalk 2006 - Introduction to Error Handling
http://blogs.conchango.com/matthall/archive/2005/07/28/1894.aspx
As always, please let me know if you have further question on this.
Have a great day.
Sincerely,
WenJun Zhang
Microsoft Online Community Support
Delighting our customers is our #1 priority. We welcome your comments and
suggestions about how we can improve the support we provide to you. Please
feel free to let my manager know what you think of the level of service
==================================================
Get notification to my posts through email? Please refer to
http://msdn.microsoft.com/subscriptions/managednewsgroups/default.aspx#notif
ications.
Note: The MSDN Managed Newsgroup support offering is for non-urgent issues
where an initial response from the community or a Microsoft Support
Engineer within 1 business day is acceptable. Please note that each follow
up response may take approximately 2 business days as the support
professional working with you may need further investigation to reach the
most efficient resolution. The offering is not appropriate for situations
that require urgent, real-time or phone-based interactions or complex
project analysis and dump analysis issues. Issues of this nature are best
handled working with a dedicated Microsoft Support Engineer by contacting
Microsoft Customer Support Services (CSS) at
http://msdn.microsoft.com/subscriptions/support/default.aspx.
==================================================
This posting is provided "AS IS" with no warranties, and confers no rights
WenJun Zhang[msft]
2008-03-26 13:03:38 UTC
Permalink
Salam,

The SuspendMessage orchestration also uses a direct binding port to receive
failed message. The linked sender is ResubmitLogic orchestration's
SendToSuspendingOrchestration port. The logic is when ResubmitLogic orch
found it cannot parse the XML of a failed message and generate an error
report, then it submit the message to SuspendMessage orch for suspending
and stop the error report/resubmit operations.

The SuspendMessage orch simply use a Suspend shape to suspend the instance.

Have things been completely clear now? If not, please don't hesitate to
update here.

Thanks.

Sincerely,

WenJun Zhang

Microsoft Online Community Support

Delighting our customers is our #1 priority. We welcome your comments and
suggestions about how we can improve the support we provide to you. Please
feel free to let my manager know what you think of the level of service
provided. You can send feedback directly to my manager at:
***@microsoft.com.

==================================================
Get notification to my posts through email? Please refer to
http://msdn.microsoft.com/subscriptions/managednewsgroups/default.aspx#notif
ications.

Note: The MSDN Managed Newsgroup support offering is for non-urgent issues
where an initial response from the community or a Microsoft Support
Engineer within 1 business day is acceptable. Please note that each follow
up response may take approximately 2 business days as the support
professional working with you may need further investigation to reach the
most efficient resolution. The offering is not appropriate for situations
that require urgent, real-time or phone-based interactions or complex
project analysis and dump analysis issues. Issues of this nature are best
handled working with a dedicated Microsoft Support Engineer by contacting
Microsoft Customer Support Services (CSS) at
http://msdn.microsoft.com/subscriptions/support/default.aspx.
==================================================
This posting is provided "AS IS" with no warranties, and confers no rights.
SalamElias
2008-03-26 13:48:02 UTC
Permalink
Thanks again Wen, I understand this but the problkem I introduced some
"System.diagnostics.debug.writeline in both orchestration, resubmit is
sending the statments to debug view but this orch is not sending anything in
spite of the fact that I have put the debug statments before the suspend shape
Post by WenJun Zhang[msft]
Salam,
The SuspendMessage orchestration also uses a direct binding port to receive
failed message. The linked sender is ResubmitLogic orchestration's
SendToSuspendingOrchestration port. The logic is when ResubmitLogic orch
found it cannot parse the XML of a failed message and generate an error
report, then it submit the message to SuspendMessage orch for suspending
and stop the error report/resubmit operations.
The SuspendMessage orch simply use a Suspend shape to suspend the instance.
Have things been completely clear now? If not, please don't hesitate to
update here.
Thanks.
Sincerely,
WenJun Zhang
Microsoft Online Community Support
Delighting our customers is our #1 priority. We welcome your comments and
suggestions about how we can improve the support we provide to you. Please
feel free to let my manager know what you think of the level of service
==================================================
Get notification to my posts through email? Please refer to
http://msdn.microsoft.com/subscriptions/managednewsgroups/default.aspx#notif
ications.
Note: The MSDN Managed Newsgroup support offering is for non-urgent issues
where an initial response from the community or a Microsoft Support
Engineer within 1 business day is acceptable. Please note that each follow
up response may take approximately 2 business days as the support
professional working with you may need further investigation to reach the
most efficient resolution. The offering is not appropriate for situations
that require urgent, real-time or phone-based interactions or complex
project analysis and dump analysis issues. Issues of this nature are best
handled working with a dedicated Microsoft Support Engineer by contacting
Microsoft Customer Support Services (CSS) at
http://msdn.microsoft.com/subscriptions/support/default.aspx.
==================================================
This posting is provided "AS IS" with no warranties, and confers no rights
WenJun Zhang[msft]
2008-03-27 07:08:17 UTC
Permalink
Hi Salam,

If you use the failed message in the sample as input document, the
SuspendMessage orchestration will not be triggered because ResubmitLogic
orchestration can properly generate an error report for that failed
document and gets into resubmit process. Have you tried a failed input
document which doesn't match the schema at all?

Thanks.

Sincerely,

WenJun Zhang

Microsoft Online Community Support

Delighting our customers is our #1 priority. We welcome your comments and
suggestions about how we can improve the support we provide to you. Please
feel free to let my manager know what you think of the level of service
provided. You can send feedback directly to my manager at:
***@microsoft.com.

==================================================
Get notification to my posts through email? Please refer to
http://msdn.microsoft.com/subscriptions/managednewsgroups/default.aspx#notif
ications.

Note: The MSDN Managed Newsgroup support offering is for non-urgent issues
where an initial response from the community or a Microsoft Support
Engineer within 1 business day is acceptable. Please note that each follow
up response may take approximately 2 business days as the support
professional working with you may need further investigation to reach the
most efficient resolution. The offering is not appropriate for situations
that require urgent, real-time or phone-based interactions or complex
project analysis and dump analysis issues. Issues of this nature are best
handled working with a dedicated Microsoft Support Engineer by contacting
Microsoft Customer Support Services (CSS) at
http://msdn.microsoft.com/subscriptions/support/default.aspx.
==================================================
This posting is provided "AS IS" with no warranties, and confers no rights.
WenJun Zhang[msft]
2008-03-31 10:15:09 UTC
Permalink
Hi Salam,

I wonder if you have any further question on this? If not, I will go ahead
and close this post.

Thanks.

Sincerely,

WenJun Zhang

Microsoft Online Community Support

Delighting our customers is our #1 priority. We welcome your comments and
suggestions about how we can improve the support we provide to you. Please
feel free to let my manager know what you think of the level of service
provided. You can send feedback directly to my manager at:
***@microsoft.com.

==================================================
Get notification to my posts through email? Please refer to
http://msdn.microsoft.com/subscriptions/managednewsgroups/default.aspx#notif
ications.

Note: The MSDN Managed Newsgroup support offering is for non-urgent issues
where an initial response from the community or a Microsoft Support
Engineer within 1 business day is acceptable. Please note that each follow
up response may take approximately 2 business days as the support
professional working with you may need further investigation to reach the
most efficient resolution. The offering is not appropriate for situations
that require urgent, real-time or phone-based interactions or complex
project analysis and dump analysis issues. Issues of this nature are best
handled working with a dedicated Microsoft Support Engineer by contacting
Microsoft Customer Support Services (CSS) at
http://msdn.microsoft.com/subscriptions/support/default.aspx.
==================================================
This posting is provided "AS IS" with no warranties, and confers no rights.
Loading...