構文
String getSubType()
戻り値
現在の例外についての例外サブタイプが含まれている String。有効な例外サブタイプの詳細については、『注記』を参照してください。
注記
getSubType() メソッドは、現在の例外についての例外サブタイプを取得します。例外タイプにより原因が十分に示されていない例外の場合、例外サブタイプから詳細な情報を把握できることがあります。一般に例外サブタイプを使用する例外タイプを以下に示します。
コラボレーション・ランタイム環境は Java 例外をキャッチし、Java 例外の関連するタイプと一緒にコラボレーション例外の中にラップします。コラボレーションはコラボレーション例外に対して getSubType() を使用することで、Java 例外の元のタイプ (キャッチされた Java 例外のクラス名) を取得できます。ただし、これは通常は必要ありません。
ServiceCallException 例外タイプは、サービス呼び出しが失敗すると発生します。より堅固なコラボレーションを開発するために、サービス呼び出し失敗の原因を示す例外サブタイプを使用できます。有効な例外サブタイプには以下のものがあります。
AppTimeOut | コネクターがアプリケーションとの通信を完了できなかったことを示します。 |
AppLogOnFailure | コネクターがアプリケーションへログインできなかったことを示します。 |
AppRetrieveByContentFailed | アプリケーションに対して実行された非キー値による Retrieve 操作で、条件に一致するものを取得できなかったことを示します。 |
AppMultipleHits | アプリケーションが Retrieve 要求に応答して複数のエンティティーを取得したことを示します。 |
AppBusObjDoesNotExist | アプリケーションに対して Retrieve 操作が実行されたが、ビジネス・オブジェクトを表すエンティティーがそのアプリケーション・データベース内に存在しないことを示します。 |
AppRequestNotYetSent | 並列コネクター・エージェントの場合に、要求がエージェント・マスターのキューに入っているが、アプリケーションにディスパッチされていないため、要求を再送信できることを示します。詳細については、未送信サービス呼び出し要求を参照してください。 |
ServiceCallTransportException | トランスポートにエラーがあり、要求がアプリケーションに到達できたかどうかを正確に確認できないことを示します。
詳細については、実行時のトランスポート関連例外の処理を参照してください。 |
AppUnknown | その他のサブタイプのいずれでもないタイプのエラーです。この例外サブタイプが存在する場合、サービス呼び出しで要求されたアプリケーション操作は、終了している場合と終了していない場合があります。 |
詳細については、特定のサービス呼び出し例外の処理を参照してください。
このセクションでは、以下の例外タイプの例外サブタイプを取得する例を示します。
次のコード例は、数学関数によってスローされた Java 例外を取得します。
// // If the preceding division operation threw an exception, // set the result to 0. // if (currentException.getType().equals("JavaException")) { String subType = currentException.getSubType(); logWarning("Caught exception " + subType + ". Setting result to 0."); result = 0; }
次の 2 つの ServiceCallException サブタイプの処理方法の例については、以下のセクションを参照してください。