NullSearch ユーティリティは、実行時に Enterprise Server に渡されたカスタム レコード クラスに含まれる NULL 値フィールドを識別します。NULL 値フィールドは無効であり、ランタイム システムの実行を妨げます。
Enterprise Server に渡されたカスタム レコード マッピングに NULL 値フィールドが 1 つでも含まれていると、実行時に次の一般的なエラー メッセージが返されます。
Sorry cannot have a null as value. Run the NullSearch utility.
NullSearch ユーティリティは、値が NULL であるフィールドを識別します。これは、カスタム レコード マッピングに多数のフィールドが含まれている場合に特に役立ちます。たとえば、顧客レコード A の内部クラス B に String 型の 1000 個の要素を含む配列が格納されているとします。それらのいずれかの String 要素の値が NULL であるために実行時に上記のエラー メッセージが表示された場合、NullSearch ユーティリティがなければ、問題のあるフィールドを手動で特定しなければなりません。
NullSearch ユーティリティは、Java プログラムから呼び出される nullSearch.jar という名前の Java .jar ファイルとして提供されます。nullSearch.jar は、デフォルトでは %ProgramFiles(x86)%\Micro Focus\Visual COBOL\javaee(Windows) または /javaee(UNIX) ディレクトリに格納されています。
nullSearch.jar を使用する手順は次のとおりです。
拡張されるクラス | .jar ファイル |
---|---|
com.microfocus.cobol.connector.cci.CustomRecord | mfejblib.jar |
com.microfocus.cobol.lang.CustomRecord | mfcobolpure.jar |
public class testSearch { public static void main(String[] args){ custom_record field = new custom_record(); Object[] params = field.getParameters(); com.microfocus.tools.NullSearch search = new com.mf.NullSearch(); search.parseFields(params); } }
Field 0 is: classA$classB Field 0.20 is: classA$classB$classC Field 0.24 is: classA$classB$classD Field 1 is: classA$classE Field 1.0 is: [LclassF$classG$classH; Field 1.0.2 is null