JVM COBOL での複数の実行単位のアプリケーションの開発

注: 次の説明は JVM COBOL にのみ該当します。

あらゆる既存の COBOL プログラムを、Java のマルチ ユーザー環境で使用できます。手順は次のとおりです。

  1. COBOL クラス ライブラリのプロジェクトを作成して、そのプロジェクトに手続き型 COBOL プログラムを追加します。
  2. プロジェクトをリビルドします。
注: EXEC SQL 文 (プログラム、クラス、列挙、および ValueType コードを含む) を使用する JVM COBOL コードはマネージ実行単位内にある必要があります。

コードを適切に実行するためにマルチ ユーザー環境またはスレッド プール環境が必要な場合もマネージ RunUnit の使用が推奨されますが、コードがスレッド セーフになるように設計されている場合はこの限りではありません。

呼び出し先の COBOL プログラムが手続き型であるかオブジェクト指向型であるかに関係なく、その COBOL を呼び出すプログラムが必要です。

  1. 呼び出し元のプログラムのプロジェクトを作成します。
  2. 呼び出し元のプログラムで、com.microfocus.cobol.runtimeservices.RunUnit コンストラクターを使用して実行単位を作成します。
  3. Try ... Finally 構文を使用して、プログラムが失敗した場合に実行単位を破棄するようにします。
  4. RunUnit.Call() メソッドを使用して COBOL クラスを呼び出すか、次の手順を行います。
    • パラメーターが Java プリミティブ データ型であることを確認してください。
    • 呼び出す手続き型 COBOL プログラムのインスタンスを作成します。
    • RunUnit.Add() メソッドを使用して、プログラム インスタンスを新しい実行単位に追加します。
    • 新しい実行単位内でプログラム インスタンスを起動します。
  5. StopRun() メソッドを使用して、実行単位の使用終了後に、実行単位を破棄します。
Notes:
  • 実行単位によりランタイム エラーが発生した場合、java.lang.RuntimeException がスローされます。
  • 複数の言語を使用する環境のオブジェクト指向 COBOL プログラムでは、静的メソッドおよびデータは、ランタイム エラーの原因となるため使用できません。
  • 実行単位はそれぞれ異なるスレッドで実行されるため、データ アクセスが同期化されることを確認してください。

RunUnit クラスおよびその他の例の詳細については、「com.microfocus.cobol.runtimeservices」トピックを参照してください。