|
| 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 exception
(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_SelectionCompone
ntService_RRPort_e215c9eaa435806b"
with URL
"http://localhost/ApplicationManagementSystem/SelectionComponentService/SelectionComponentService.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 BTS2006
/ VS 2005 Prof.).
Any help urgently need! Thanks and regards
Erik
|
|