06-13-06 12:22 PM
Hi all,
I'm facing some problems with catching and handling exceptions in a BizTalk
2006 (BTS2006) orchestration. Here's my scenario:
I've got an orchestration with consumes a web service that may throw a
SOAPException. I want to catch and handle this exception and did the
following:
1) Created a scope where the web service is invoked by a send shape and the
response is received by a receive shape. Both shape are in the scope.
2) Added an exception catching block (exception handler) to the scope which
should catch System.Web.Service.Protocols.SoapException and log the exceptio
n
(with an expression shape) in the event log and throw the soap exception
again, because I published the orechestration as web service for being used.
Unfortunatly this seems not to work! If the consumed web service throws a
SoapException BizTalk logs a warning and retries the servive invocation:
The adapter failed to transmit message going to send port
"ServiceSelection_1.0.0.0_ServiceSelection.ServiceSelectionProcess_Selection
ComponentService_RRPort_e215c9eaa435806b
"
with URL
"http://localhost/ApplicationManagementSystem/SelectionComponentService/Sele
ctionComponentService.asmx".
It will be retransmitted after the retry interval specified for this Send
Port. Details:"SoapException: Selection Error: System.Exception: No Service
found.
at SelectionComponentService.GetBestService(String Interface)
".
Now my Questions:
1) Why the catch exception block is not exceuted and the service invocation
is retried instead?
2) How to send a fault message from a orchestration which is published as
web service? I read something about configuring fault message for
request-resposne port but I could find where and how to do this (with BTS200
6
/ VS 2005 Prof.).
Any help urgently need! Thanks and regards
Erik
[ Post a follow-up to this message ]
|