Interstage Application Server SOAPサービス ユーザーズガイド |
目次
索引
![]() ![]() |
第5章 RPC方式のアプリケーションの実装 | > 5.5 Fault情報の設定と解析 |
RPCサーバアプリケーションのメソッドが例外を投げる(throwする)と、RPCクライアントアプリケーションに対してFault情報が送信されます。Fault情報は、発生した問題に関する情報をRPCクライアントアプリケーションに通知するものです。
RPCサーバアプリケーションで例外としてjavax.xml.rpc.soap.SOAPFaultExceptionをthrowすることで、送信されるFault情報の内容を設定できます。
RPCサーバアプリケーションのメソッドがjavax.xml.rpc.soap.SOAPFaultException以外のThrowableオブジェクトをthrowした場合、以下の情報が含まれたFault情報を送信します。
Faultコード |
"Server" |
Fault説明 |
"Throwable is thrown in server application(1220)" |
以下の情報がFault情報に設定できます。
情報種別 |
内容 |
---|---|
Faultコード |
エラーの分類です。以下の値が指定できます。
|
Fault説明 |
エラーの内容を説明する文字列です(任意)。 |
Faultアクタ |
エラーの発生した場所(サーバアプリケーションなど)を表すURIです。 |
Fault詳細 |
Webサービス固有に定義されるエラー情報項目を指定します。 |
Fault情報は、javax.xml.rpc.soap.SOAPFaultExceptionのコンストラクタのパラメタに指定します。
SOAPFaultException( |
Fault 詳細項目は、javax.xml.soap.DetailEntryオブジェクトとして生成します。javax.xml.soap.DetailEntryオブジェクトはSAAJ-APIのjavax.xml.soap.SOAPElementを継承したインタフェースなのでjavax.xml.soap.SOAPElementオブジェクトに対する操作をそのまま行うことができます。SAAJ-APIについての詳細は“SAAJ-APIによるSOAPメッセージの処理”を参照してください。
以下にjavax.xml.rpc.soap.SOAPFaultExceptionをthrowするRPCサーバアプリケーションのメソッドのプログラム例を示します。このメソッドでは、inパラメタのStringの配列に特定の値が含まれていたときに、javax.xml.rpc.soap.SOAPFaultExceptionをthrowし、RPCクライアントアプリケーションにFault情報が送信されます。
javax.xml.rpc.soap.SOAPFaultExceptionをthrowするSOAPサーバアプリケーションのメソッドの例
・java.lang.Stringの配列(foods)に特定文字("carrot")が含まれていたときにjavax.xml.rpc.soap.SOAPFaultExceptionをthrowします。
public void eat(String[] foods) |
RPCクライアントアプリケーションでのFault情報の処理方法は、“Fault情報の解析”を参照してください。
目次
索引
![]() ![]() |