4

.NET WCFを使用してWebサービスを作成し、それをJAX-WS( wsimport )で使用するときに、SOAP障害を正しい方法で定義するためのヘルプ/アドバイスを探しています。

私のサービスが次のようになっていると仮定しましょう。

[ServiceContract(Namespace = "http://sub.pub.com")]
public interface IService
{
    [OperationContract]
    [FaultContract(typeof(ArgumentOutOfRangeException))]
    void OperationOne(int deviceId, int socket);

    [OperationContract]
    [FaultContract(typeof(ArgumentOutOfRangeException))]
    void OperationTwo(int deviceId, int socket);
}

私のサービスのどこかで私は次のことをしています...

throw new FaultException<ArgumentOutOfRangeException>(...);

WCFサービスのWSDLに対してJAX-WSアーティファクトを生成すると、OperationOneOperationTwoに対して次のJava例外が発生します。

  • IServiceOperationOneArgumentOutOfRangeExceptionFaultFaultMessage
  • IServiceOperationTwoArgumentOutOfRangeExceptionFaultFaultMessage

それは機能しますが、それは醜く、同じものに2つの例外があるため(この例では引数が範囲外です)、私のコードは奇妙になります。

  • 一般的なFaultExceptionを正しい方法で使用していますか?
  • このようなWSDLをwsimportで正しく使用して、例外を1つだけ生成するにはどうすればよいですか?
4

0 に答える 0