WCF が例外をエラーに変換し、SOAP メッセージとして送り返すことは理解していますが、これが本当に相互運用可能かどうか疑問に思っていました。この考えられるシナリオを理解しようとするのに苦労していると思います:
- クライアント (Java) が WCF サービス (LoginService) を呼び出します。
- サーバーは適切な承認をチェックしますが、ユーザー承認は失敗します。
- サーバーが UnauthorizedAccessException をスローします。
- WCF はこれを Fault に変換します。(* - 以下も参照)
- クライアントは、このフォールトの読み取り方法を認識できなければなりません。
.NET が UnauthorizedAccessException からエンコードする SOAP Fault を Java が変換する方法を Java が認識していることを期待しているため、これがどのように相互運用可能であるかを理解するのに苦労していると思います。
- また、.NET が実際にどのように例外を障害に変換するのか、障害コード、名前などとして何が入るのか。おそらく障害名が「UnauthorizedAccessException」のように「当然」のように見えるものもありますが、私は '推測するよりも確実に知っている方がよい。