2012-01-25 8 views
0

オーケストレーションでEndpointNotFoundExceptionを処理したいと考えています。Biztalk 2010オーケストレーションでCatch EndpointNotFoundExceptionが発生する

私は同期新しい例外ハンドラ

範囲= falseを

例外オブジェクトの種類= System.ServiceModel.EndpointNotFoundException(このオブジェクトタイプは動作しません)

例外オブジェクトタイプ=システムを追加します。 ServiceModel.CommunicationException(このオブジェクトタイプは機能しません)

例外オブジェクトタイプ= System.SystemException(このオブジェクトタイプは機能しませんでした)

オーケストレーションでこのような例外をどのように捕まえることができますか?

+0

のために働くのでしょうか? –

+0

私は、式の形を使って各キャッチブロック内のイベントビューアにカスタムエラーメッセージを書きます。 – MUS

+0

どのような例外の型がスローされているのですか? –

答えて

2

これはよくある問題です。 hereおよびhereSystem.Exceptionを捕まえると、System.ServiceModel.EndpointNotFoundExceptionの内部がSystem.Net.WebExceptionであることがわかります。

あなたの質問に直接答えることはできませんが、ポートをDelivery Notification = Transmittedとマークしてから、DeliveryFailureException?をキャッチしてください。

この方法では、オーケストレーションを特定のアダプタ(WCF)から分離し、トランスポートを変更する(またはバックアップトランスポートなどを追加する)場合でも、例外処理は引き続き機能します。

編集:スコットColestockはhack to catch internal exceptionsに言及 - 類似した何かを使用すると、catchブロックが機能していません知っていますどのように元の要件

+1

残念ながら、リクエスト - 応答ポートで配信通知が機能しません。 –

関連する問題