COBOL2002 Cosminexus連携機能ガイド


8.3.1 J2CBExceptionクラスのメソッド

J2CBExceptionクラスで提供するメソッドの一覧を表8-4に示します。

表8‒4 J2CBExceptionクラスの提供メソッド一覧

項番

メソッド名

機能

1

getCblErrorCode

COBOL UAPの呼び出しで発生した例外コードを取得する。

2

getCblMessageID

該当するCOBOL実行時エラーメッセージIDを取得する。

3

getDetailMessage

COBOL実行時エラーメッセージIDに対応するメッセージを取得する。

4

getErrorCode

COBOLアクセスで発生した例外情報コードを取得する。

5

getMessage

COBOLアクセスで発生した例外情報コードに対するメッセージ文字列を取得する。

6

getName

COBOLアクセスで発生した例外名を取得する。

J2CBExceptionクラスのメソッドについて説明します。

これらの例外用メソッドを使用して,COBOL側で発生したエラー情報などを取得します。プログラム中からこれらのメソッドを使用し,例外情報を参照できます。

〈この項の構成〉

(1) 例外コードの取得

[getCblErrorCodeメソッド]
public java.lang.String getCblErrorCode()
戻り値:null/x00002135(8501)/そのほかのコード(例外種別コード)

null:COBOLアクセスで異常終了した。

x00002135(8501):実行時デバッグ機能オプション※1またはテストデバッグ機能オプション※2を指定したCOBOL UAPで異常終了した場合,またはCOBOL実行時エラーが発生して異常終了した場合,当コードを返します。getCblMessageID メソッドなどからエラー情報を取得して原因を調査してください。

そのほかのコード:実行時デバッグ機能オプション※1またはテストデバッグ機能オプション※2の指定がないCOBOL UAPで例外が発生した場合,システムの例外種別コード値を返します。

注※1 実行時デバッグ機能オプション

  • -DebugInf

  • -DebugInf,Trace

  • -DebugCompati

  • -DebugData

  • -DebugRange

注※2 テストデバッグ機能オプション

  • -TDInf

  • -CVInf

(2) 実行時エラーメッセージID取得

[getCblMessageIDメソッド]
public java.lang.String getCblMessageID()
戻り値:

KCCCのプリフィクスなしの番号の文字列

COBOL実行時エラーメッセージIDが存在しない場合は,null

(3) 該当エラーメッセージの取得

[getDetailMessageメソッド]
public java.lang.String getDetailMessage()
戻り値:該当するCOBOL実行時エラーメッセージ

環境変数CBL_SYSERRで指定したファイルに出力された実行時エラーメッセージの中から,該当する例外オブジェクトに格納されたCOBOL実行時エラーメッセージIDに対応するメッセージを取得します(COBOL実行時エラーメッセージIDが存在しない場合は,null)。

(4) COBOLアクセスの例外情報コードの取得

[getErrorCodeメソッド]
public java.lang.String getErrorCode()
戻り値:例外情報コード

COBOLアクセスで発生した例外情報コードを取得します。

例外情報コードは,「付録E 例外情報コード一覧」の「表E‒1 例外名一覧(JavaBean/EJB共通)」と「表E‒2 JavaBean用エラー発生場所(メソッド)コード」を参考にしてください。また,これらのコードは16進コードです。

なお,例外情報コードは,先頭に"J2CB"が付加されて次のようになります。

(例)J2CB6052002の場合

J2CB :プリフィクス

605  :エラー発生場所(メソッド)コード(3けた)

2002 :エラー要因コード(4けた)

(5) COBOLアクセスのメッセージ取得

[getMessageメソッド]
public java.lang.String getMessage()
戻り値:メッセージ文字列

COBOLアクセスで発生したエラー発生場所(メソッド)とエラー要因をメッセージ文字列で返します。

null:情報なし

オーバーライド:クラス java.lang.Throwable 内のgetMessage

(6) 例外名の取得

[getNameメソッド]
public java.lang.String getName()
戻り値:発生した例外名を返します。

詳細は,「8.3.2 提供クラスのメソッドで発生する例外」の「表8‒5 ユーザがキャッチできる提供クラスのメソッドで発生する例外」に示すユーザがキャッチできる提供クラスのメソッドで発生する例外を参照してください。