2016-05-18 2 views
0

私たちには、従来のSOAP Webサービスが.Netで書かれています。私たちは現在javaでそれを書き直しています。Jax WSのExceptionMapper

私はSOAPサービスに取り組んだことはありませんが、REST Webサービスについてはほとんど知識がありません。

Jax RSでは、ExceptionMapperインターフェイスを使用して、RuntimeExceptionをレスポンスにマッピングすることができます。だから我々は我々のカスタム例外とjava.lang.RuntimeExceptionは、当方は一切の例外スタックトレースがクライアントに返されません確認してください。この方法

@Provider 
public class UnhandledExceptionMapper implements ExceptionMapper<RuntimeException> { ... } 

の下のような未処理の実行時例外を処理するためにマップします。

Jax WSにも同様のアプローチがありますか?

+0

[JAX-WS Webサービスにカスタムフォールトを投げる方法は?](http://stackoverflow.com/questions/13596260/how-to-throw-a-custom-fault-on-a) -jax-ws-web-service) – kolossus

答えて

0

はい、ほとんど正しいです。 SOAPサービスでは、メッセージフィールドとエラーコードフィールドを持つServiceErrorクラスを作成し、そのクラスにいくつかのコンストラクタも記述します。

我々はフォローなどのランタイムエラーをキャッチ:

try { 

} catch(Throwable t) { 
    return new ServiceError(109L,"RunTime Error:"+t.getMessage()); 
} 

あなたは私のアプローチを通過することができます。