Hitachi

Cosminexus V11 アプリケーションサーバ SOAPアプリケーション開発の手引


3.6.5 SOAP FaultからJava例外へのマッピング

SOAPアプリケーションの実行中にSOAP Faultを受信した場合の処理の流れと,SOAP FaultとJava例外のマッピングについて説明します。

〈この項の構成〉

(1) スタブを使用した場合

スタブを使用した場合に,SOAP Faultを受信したときの処理の流れを次の図に示します。

図3‒31 SOAP Fault受信時の処理の流れ(スタブ)

[図データ]

SOAP Faultを受信したときの処理を次の表に示します。

表3‒19 SOAP Fault受信時の処理(スタブ)

項番

SOAP Fault

SOAPクライアント

1

WSDL Faultに対応するインスタンス

ユーザ定義例外が取得されます。

2

WSDL Faultに対応しないインスタンス

C4Faultが取得されます。

SOAP FaultからJava例外へのマッピング規則を次の表に示します。

表3‒20 SOAP FaultからJava例外へのマッピング規則(スタブ)

SOAP Faultの要素

ユーザ定義例外の場合

C4Faultの場合

faultcode

マッピングされません。

C4FaultのFaultCodeに設定されます。

faultstring

マッピングされません。

C4FaultのFaultStringに設定されます。

faultactor

マッピングされません。

C4FaultのFaultActorに設定されます。

detail

wsdl:fault要素で指定しているスキーマに従って,ユーザ定義例外へマッピングされます。

C4FaultのFaultDetailに設定されます。

(2) DIIを使用した場合

DIIを使用した場合に,SOAP Faultを受信したときの処理の流れを次の図に示します。

図3‒32 SOAP Fault受信時の処理の流れ(DII)

[図データ]

SOAP Faultを受信したときの処理を次の表に示します。

表3‒21 SOAP Fault受信時の処理(DII)

項番

SOAP Fault

SOAPクライアント

1

WSDL Faultに対応するインスタンス

  1. RemoteExceptionからC4Faultがアンラップされます。

  2. C4Faultからユーザ定義例外がアンラップされます。

  3. ユーザ定義例外が取得されます。

2

WSDL Faultに対応しないインスタンス

C4FaultをラップしたRemoteExceptionが取得されます。

C4FaultをラップしたRemoteExceptionの内容を示します。

表3‒22 C4FaultをラップしたRemoteException(DII)

RemoteException

内容

詳細メッセージ

KDCCP3008-E An attempt to execute the invoke method has failed.(Class name = <クラス名>, Method signature = <メソッドシグネチャ>, reason = <理由>)

原因例外

C4Fault