SOAPFaultオブジェクト
コンポーネント情報 | |
---|---|
version | 8.0 |
since | 7.0 |
SOAPFault オブジェクト。
SOAPFaultオブジェクト は、XML形式の SOAPフォルトを JavaScriptのオブジェクト形式に変換したものです。
(SOAPFaultオブジェクトのプロパティは、コンストラクタの説明を参照してください)
以下に、「SOAPフォルトの受信方法」と 「SOAPフォルトの送信方法」をサンプルコードを用いて説明します。
SOAPClientオブジェクト を利用してWebサービスを呼び出した際に、 Webサービスの結果がSOAPフォルトとして返却されると、このAPIドキュメントで説明している SOAPFaultオブジェクト
が例外としてスローされます。
SOAPFaultオブジェクトを捕捉する(=Webサービス・オペレーションの実行ロジック部分をtry/catchで囲む)ことで、 SOAPFaultオブジェクトを利用したエラー処理を行う事が可能となります。
SOAPFaultオブジェクトのプロパティは、コンストラクタの説明を参照してください。
まず、2行目で、SOAPFaultオブジェクトのインスタンスを生成しています。引数にはSOAPフォルトのFault Reasonを指定します。
4~9行目にかけて、SOAPフォルトの具体的な内容を設定しています。
SOAPFaultオブジェクトのプロパティは、コンストラクタの説明を参照してください。
SOAPFaultオブジェクトをスローするには、12行目のように「throwFault()」関数を実行してください。
(「throw soapFault;」といった、JavaScriptのスロー構文を利用しないでください)
「throwFault()」関数内部で変換処理が行われ、 WebサービスクライントにSOAPフォルトメッセージが返却されます。
上記サンプルコードで返却されるSOAPメッセージの例です。
SOAPFaultオブジェクト は、XML形式の SOAPフォルトを JavaScriptのオブジェクト形式に変換したものです。
(SOAPFaultオブジェクトのプロパティは、コンストラクタの説明を参照してください)
以下に、「SOAPフォルトの受信方法」と 「SOAPフォルトの送信方法」をサンプルコードを用いて説明します。
SOAPフォルトの受信方法
SOAPフォルトを受信するサンプルコードです。SOAPフォルトを受信するサンプルコード |
---|
1: //------------------------------- 2: // Webサービスの呼び出し 3: //------------------------------- 4: try{ 5: var result = soapClient.add(wsUserInfo, member); 6: } 7: catch(soapFault){ 8: Debug.browse("エラーが発生しました。", soapFault); 9: } |
SOAPFaultオブジェクトを捕捉する(=Webサービス・オペレーションの実行ロジック部分をtry/catchで囲む)ことで、 SOAPFaultオブジェクトを利用したエラー処理を行う事が可能となります。
SOAPFaultオブジェクトのプロパティは、コンストラクタの説明を参照してください。
SOAPフォルトの送信方法
SOAPフォルトを送信するサンプルコードです。SOAPフォルトを送信するサンプルコード |
---|
1: // SOAPFaultオブジェクトの生成(引数には「Fault Reason」を指定します) 2: var soapFault = new SOAPFault("エラーが発生しました。"); 3: 4: // SOAPフォルトの内容を設定します。 5: soapFault.faultCode = "SampleFaultCode"; 6: soapFault.faultCodeNameSpaceURI = "http://sample.fault/xsd"; 7: 8: soapFault.detail = "エラーの詳細情報です"; 9: soapFault.detailNodeName = "soapFault_detailNodeName"; 10: 11: // SOAPFaultをスロー (ここで処理が終了します) 12: soapFault.throwFault(); |
まず、2行目で、SOAPFaultオブジェクトのインスタンスを生成しています。引数にはSOAPフォルトのFault Reasonを指定します。
4~9行目にかけて、SOAPフォルトの具体的な内容を設定しています。
SOAPFaultオブジェクトのプロパティは、コンストラクタの説明を参照してください。
SOAPFaultオブジェクトをスローするには、12行目のように「throwFault()」関数を実行してください。
(「throw soapFault;」といった、JavaScriptのスロー構文を利用しないでください)
「throwFault()」関数内部で変換処理が行われ、 WebサービスクライントにSOAPフォルトメッセージが返却されます。
上記サンプルコードで返却されるSOAPメッセージの例です。
SOAPフォルトを含むメッセージの例 |
---|
<?xml version='1.0' encoding='UTF-8'?> <soapenv:Envelope xmlns:soapenv="http://www.w3.org/2003/05/soap-envelope"> <soapenv:Header xmlns:wsa="http://www.w3.org/2005/08/addressing"> <wsa:Action>http://www.w3.org/2005/08/addressing/soap/fault</wsa:Action> <wsa:RelatesTo>urn:uuid:BBE36157BF34C817391214111551449</wsa:RelatesTo> </soapenv:Header> <soapenv:Body> <soapenv:Fault xmlns:axis2ns4="http://sample.fault/xsd"> <soapenv:Code> <soapenv:Value>axis2ns4:SampleFaultCode</soapenv:Value> </soapenv:Code> <soapenv:Reason> <soapenv:Text xml:lang="en-US">エラーが発生しました。</soapenv:Text> </soapenv:Reason> <soapenv:Detail> <soapFault_detailNodeName>エラーの詳細情報です</soapFault_detailNodeName> </soapenv:Detail> </soapenv:Fault> </soapenv:Body> </soapenv:Envelope> </pre> |
コンストラクタの概要
SOAPFault (String reason ) SOAPFaultオブジェクトを生成します。 |
メソッドの概要
返却値の型 | メソッド名 |
---|---|
void | throwFault () SOAPFaultオブジェクトをスローします。 |
コンストラクタの詳細
SOAPFault (String reason )
SOAPFaultオブジェクトを生成します。
引数には、SOAPフォルトの Reason要素 に格納するメッセージを指定します。 インスタンス生成後、SOAPフォルトの要素をプロパティに設定します。 その後、「throwFault()」関数を実行し、このオブジェクトをスローしてください。 このオブジェクトのプロパティとSOAPフォルトの要素の関係は以下の通りです。
パラメータ
|
メソッドの詳細
void throwFault ()
SOAPFaultオブジェクトをスローします。
SOAPFaultオブジェクトのプロパティに設定された値をもとに変換処理が行われ、 WebサービスクライントにSOAPフォルトメッセージを送信します。 SOAPFaultオブジェクトのプロパティは、コンストラクタの説明を参照してください。 SOAPFaultオブジェクトをスローする場合は、この関数を使用してください。 (「throw soapFault;」といった、JavaScriptのスロー構文を利用しないでください)
返却値
|