ここでは、アダプタクラスを使用したプログラムの実行時に出力するメッセージの内容および対処方法について説明します。
実行時のメッセージは、COBOLのUPON SYSERR指定のDISPLAY文と同じ出力先に出力されます。UPON SYSERR指定のDISPLAY文の出力先については、“NetCOBOL ユーザーズガイド”を参照してください。
アダプタクラスはメッセージを出力すると同時に例外オブジェクトを発生させます。アプリケーションで例外処理を記述しているなどの理由で実行時のメッセージを抑止したい場合は、環境変数COBJNI_NOMESSAGEに“YES”を設定することで、抑止することができます。
[参照]“Jアダプタクラスジェネレータ ユーザーズガイド”の“エラー処理”
メッセージの形式
クラス名情報 : メッセージ本文
内容
クラス名情報、エラーが発生したアダプタクラスを示します。クラス名情報の形式は、アダプタクラスの種別によって異なります。
アダプタクラス種別 | 形式 | 補足 | |
---|---|---|---|
クラス/インタフェース | パッケージ名/…/クラス名 | パッケージ名で完全修飾したクラス名です。パッケージ名、クラス名の間は “/”で区切ります。 | |
基本データ型の配列 | boolean | [Z | “[”の数は次元数を表します。たとえば2次元の配列の場合は“[[Z”になります。 |
byte | [B | “[”の数は次元数を表します。 | |
char | [C | “[”の数は次元数を表します。 | |
short | [S | “[”の数は次元数を表します。 | |
int | [I | “[”の数は次元数を表します。 | |
long | [J | “[”の数は次元数を表します。 | |
float | [F | “[”の数は次元数を表します。 | |
double | [D | “[”の数は次元数を表します。 | |
クラス/インタフェースの配列 | [Lパッケージ名/…/クラス名; | “[”の数は次元数を表します。パッケージ名で完全修飾したクラス名を、“L”と“;”ではさみます。 |
ユーザの対処
JDKまたはJREの環境に誤りがあります。環境変数PATHおよびCOBJNI_CLASSPATHが正しいか、JDKまたはJREのインストールが正しく行われているか、確認してください。
[参照]“Jアダプタクラスジェネレータ ユーザーズガイド”の“JVM-INITメソッド”
または、同一プロセス内の異なるスレッドで、JVM-INITメソッドが複数回呼び出されました。JVM-INITメソッドの替わりにJVM-ATTACHメソッドを使用してください。
[参照]“Jアダプタクラスジェネレータ ユーザーズガイド”の“JVM-ATTACHメソッド”
ユーザの対処
プログラムでJVM-INITメソッドまたはJVM-ATTACHメソッドを正しく呼び出しているか確認してください。
[参照]“Jアダプタクラスジェネレータ ユーザーズガイド”の“JVM-INITメソッド”および“JVM-ATTACHメソッド”参照)
ユーザの対処
プログラムでJVM-TERMINATEメソッドまたはJVM-DETACHメソッドを正しく呼び出しているか確認してください。
[参照]“Jアダプタクラスジェネレータ ユーザーズガイド”の“JVM-TERMINATEメソッド”および“JVM-DETACHメソッド”
ユーザの対処
Jアダプタクラスジェネレータの障害です。資料を採取して技術員(SE)に連絡してください。
ユーザの対処
Javaのクラス/インタフェース定義に誤りがあります。Javaのクラス/インタフェースを見直してください。
ユーザの対処
検索パス上で、Javaクラス/インタフェースが見つかりません。環境変数COBJNI_CLASSPATHの値が正しいか確認してください。
[参照]“Jアダプタクラスジェネレータ ユーザーズガイド”の“JVM-INITメソッド”
ユーザの対処
Java VMでメモリ不足が発生しました。環境変数(COBJNI_MAX_NSTACK、COBJNI_JAVA_STACK、COBJNI_MIN_HEAP、COBJNI_MAX_HEAP)の値を変更して、Java VMに割り当てるメモリを増やしてください。
[参照]“Jアダプタクラスジェネレータ ユーザーズガイド”の“JVM-INITメソッド”
ユーザの対処
抽象クラス上でコンストラクタを実行しました。アダプタクラス生成後にJavaクラス/インタフェースを変更した可能性があります。Javaのクラス/インタフェースを見直してください。
ユーザの対処
パラメタに指定したオブジェクトが、そのクラスまたはサブクラスのオブジェクトではありません。J-NARROWメソッドのパラメタを確認してください。
[参照]“Jアダプタクラスジェネレータ ユーザーズガイド”の“J-NARROWメソッド”
ユーザの対処
アダプタクラス生成後にJavaクラス/インタフェースを変更した可能性があります。Javaのクラス/インタフェースを見直してください。
ユーザの対処
Jアダプタクラスジェネレータの障害です。資料を採取して技術員(SE)に連絡してください。
ユーザの対処
アダプタクラス生成後にJavaクラス/インタフェースを変更した可能性があります。Javaのクラス/インタフェースを見直してください。
ユーザの対処
Jアダプタクラスジェネレータの障害です。資料を採取して技術員(SE)に連絡してください。
ユーザの対処
添字の値が 0 ~(要素数-1)の範囲にありません。正しい添字を指定してください。
ユーザの対処
配列要素に、誤ったクラスのオブジェクトを設定しようとしました。正しいクラスのオブジェクトを設定してください。設定できるのは、配列要素クラスのオブジェクトまたはそのサブクラスのオブジェクトです。
[参照]“Jアダプタクラスジェネレータ ユーザーズガイド”の“配列クラス”
ユーザの対処
Jアダプタクラスジェネレータの障害です。資料を採取して技術員(SE)に連絡してください。
ユーザの対処
Java VMが実行時エラーを検出しました。例外名および補足情報からエラーの原因を特定し、原因を取り除いてください。
ユーザの対処
Jアダプタクラスジェネレータの障害です。資料を採取して技術員(SE)に連絡してください。