2011-08-09 7 views
2

では障害発生チャンネルを回復するには、次のベストプラクティスは、あなたが簡単にWCFのチャネルを使用することができますspring.netにspring.net

<wcf:channelFactory id="Service" channelType="IDebtorService, Service" endpointConfigurationName="WcfDebtorEndpoint" /> 

<endpoint name="WcfDebtorEndpoint" address="http://localhost/ServiceHost/Debtor.svc" binding="basicHttpBinding" bindingConfiguration="basicHttpBinding1" contract="IDebtorService" /> 

あなたは他のオブジェクトにそれらを注入し、通常のオブジェクトとしてそこにそれらを使用することができます。しかし、spring.netでfaulty wcf channelsをどのように扱うことができますか?春のwcfチャンネルがフォールト状態になる可能性はありますか?

spring.netでチャンネルを開く、閉じる、再開く、または再作成するにはどうすればよいですか?

答えて

0

チャンネルに障害が発生している場合は、例外の原因を理解することができます。

フォールトチャネルは、WCFを使用すると、未処理の例外によって引き起こされる状態です。 WCF例外(サーバー用)に関する正しい処理は、フォルトを使用しています。障害は、クライアントとサーバーによって処理され、チャネルが破損することはありません。

サーバーサイドでSpring.Netを使用すると、AOP、Spring.Net AOPを使用してこれを解決することができます。 WCF ServicesでAOPを使用するには、何も変更する必要はありません。 WCFはあなたのサービスのためのインタフェースベースの契約を必要とするため、非常に簡単です.AOPエンジンでも有用で必要なものです。

多分あなたは例が必要かもしれません:私はWCF、Spring.NetとAOPで私の例外処理について調べてみたいと思うかもしれません。クラスExceptionHandlerAroundAdviceは、この概念に関する質問を明確にすることができます。

+0

クライアントの場合、実際のプロキシの内部状態を処理するために、クライアントプロキシ用のプロキシを作成することができます。それは普通ではないし、回避策のように私に見せている。 –