バッチ・インポーターを使用した J2C Java Bean のビルド

J2C データ・バインディング・ウィザードではなく、 コマンド行インターフェースであるバッチ・インポーターを介して、 J2C バインディング・クラスを作成およびアクセスすることができます。 ワークベンチからバッチ・インポーターを実行することもできます。

バッチ・インポーターを使用すると、 CICS® ECI および IMS™ リソース・アダプターの J2C バインディング・クラスを生成することができます。J2C データ・バインディング・ウィザードではなく、 コマンド行インターフェースであるバッチ・インポーターを介して、 J2C バインディング・クラスを作成およびアクセスすることができます。 ワークベンチからバッチ・インポーターを実行することもできます。
V6 Ant スクリプトから新規 J2C V7 Ant スクリプトへのマイグレーション: Rational® アプリケーション開発製品 V7.0 には、Ant スクリプトを生成する新規のセッション記録機能が含まれます。 V6 Ant スクリプトを新規の J2C V7 Ant スクリプト・フォーマットに変換するマイグレーション・ツールが提供されています。 新規 Ant スクリプトはより柔軟で使いやすいので、使用をお勧めします。

マイグレーション・ツールの実行法

  1. ソース を、マイグレーションしたい古い Ant スクリプト・ファイルと置き換えてください。
  2. ワークベンチ内で migration.xml を実行するか、ヘッドレス・モードを使用してコマンド行で実行します。
    <?xml version="1.0" encoding="UTF-8"?>
    <project name="Migration" default="default" xmlns:j2c="http://com.ibm.adapter.j2c">
    		 <-- 
    		 		 ソース・ファイル・パスは、ワークスペース相対または絶対ファイル・システム・パスです。
    		 		 元のファイル (ソース) は .bak 拡張子を使用して名前変更されます。
    		  -->
     		 <target name="default">
    		 		 <j2c:migrate source="/Script/batchImport_deprecated.xml"/>
    		 </target>
    </project>

バッチ・インポーターのスクリプトでの作業

  1. 特定の環境に合うように、5 つのファイルのパラメーターを変更する必要があります。 これらのファイルは <installdir>¥IBM¥SDP70Shared¥plugins/com.ibm.adapter/j2c.commad_6.1.0*/runtime および <installdir>¥IBM¥SDP70Shared¥plugins/com.ibm.adapter/j2c.commad_6.1.0*/sample/batch_import から入手できます。 必要なファイルは以下のとおりです。
    1. CICSECI_PlatformProperties.xml: このファイルは、 デフォルトで呼び出される C または COBOL ソース・ファイル・パラメーターを指定します。 これは、バッチ・インポーターを実行するために使用しているプラットフォーム (NT、AIX®、または MVS™) によって異なります。
    2. CICSECI_cobolSample.xml: このファイルには、バッチ・インポーターが使用するサービス・プロパティー が含まれます。
      • EISProject
        • name: 新規エンタープライズ・サービスが含まれるサービス・プロジェクトの名前。 サービス・プロジェクトが存在しない場合は、自動的に作成されます。
          注: サンプル・ファイルは、 EISProject 内に ImportPropertyArray 要素を含みます。 ここで含まれるインポート・プロパティーは、PlatformProperties.xml で設定されたすべての値をオーバーライドします。 PlatformProperties.xml 内のデフォルト設定がこのサービスに関して正しい場合、 ImportPropertyArray 要素が除去される場合があります。
      • EISService (それぞれの EISProject ごとに複数の EISService 要素を定義することが できます)。
        • name: エンタープライズ・サービスの名前。C または COBOL ファイルをインポートした後で、3 つの WSDL ファイルがそれぞれのサービスごとに作成されます (インターフェース、 バインディング、およびサービス・ファイル)。
        • type : サービスに使用されるリソース・アダプターの名前。これは、 RAR ファイルを持つコネクター・プロジェクトの名前です。
        • targetNameSpace: ターゲット名前空間の URL (http://...)。さらに、 targetNameSpace に基づいてサービス・プロジェクト内にパッケージが作成され、 生成された wsdl ファイルが含まれます。
        • generateHelpers: インポートしているネイティブ・データが C 内の構造体などの複素数データで構成される場合、サービスの実行時に Helper クラスが必要です。 このオプションが「true」に設定されている場合、インポート・バッチ・プログラムはこれらの helper クラスを ユーザーに代わって自動的に生成およびコンパイルします。
      • Operation: (それぞれの EISService ごとに複数の Operation 要素を定義することができます)
        • name : 操作の名前。
        • type: 操作のタイプ。REQUEST_RESPONSE または ONE_WAY のいずれか。
          注: 操作タイプに応じて、 ONE_WAY Operation には InputMessage 定義が含まれていなければならず、 REQUEST_RESPONSE には InputMessage 定義および OutputMessage 定義が含まれていなければなりません。InputMessage と OutputMessage が 同じタイプの定義を共用する場合、単一の InputOutputMessage 定義が使用されます。
      • ...Message
        • importFile: エンタープライズ・サービス操作の作成に使用する定義が含まれるファイルの名前。 このファイルは、C または COBOL ソース・ファイルにすることができます。
        • importDirectory: importFile が含まれるパス。importDirectory 属性が指定されない場合、 importFile を検索するために、inputdir および現行ディレクトリーが使用されます。
        • nativeTypeName : importFile からインポートされるデータ型の名前。例えば、COBOL では nativeTypeName は DFHCOMMAREA になります。 importFile の構文解析後に nativeTypeName が有効なデータ型として識別されない場合、 エラーが戻されます。
        • name: インポート済みタイプに使用される名前。例えば、DFHCOMMAREA がカスタマー・データを表す場合、 名前を Customer に設定することができます。
        • generationPackage: 生成済み helper クラス (つまり、 Bean およびフォーマット・ハンドラー) に別のパッケージ名を指定することを可能にするオプションの属性。これは、 インターフェース WSDL ファイルで生成されるスキーマのために、別の名前空間を提供します。
    3. sampleContainer.xml : このファイルは、 引数としてバッチ・インポーターに渡され、処理する必要があるファイルのリストを含みます (ImportDefinitions)。ImportDefinitionArray 要素は、以下の属性を持ちます。
      • platform: ホスト・システムのプラットフォームに名前を付けます。値は、 NTAIX、または OS390 にすることができます。
      • platformProperties: プラットフォーム・プロパティー・ファイルの名前を指定します。
    4. importBatch.bat (win) または importBatch.sh (linux): これは、以下のパラメーターが指定されたバッチ・インポーター・プログラム・ファイルです。
      • containerFile: ステップ c で定義されるファイルです。
      • Optional parameters
        • generationStyle
          • 0: デフォルトの設定値であり、WebSphere® Studio V5.0 スタイルと一致します。
          • 1: VisualAge® for Java™ の生成オプションである「直接」、「通知なし」、 「インナー・クラスなし」、「短縮名なし」、および「プリミティブ型配列あり」と一致します。
          • 2: VisualAge® for Java™ 生成オプションである「直接」、「通知なし」、 「インナー・クラスなし」、「短縮名」、「プリミティブ型配列あり」と一致します。
        • workspace: インポートに使用されるワークスペースの完全修飾パス
        • RAD_installdir: Rational Application Developer がインストールされるディレクトリー。
    5. C または COBOL ソース・ファイル: この COBOL (TADERC99.ccp) または C ソース・ファイルを使用して、バッチ・インポーターを介してデータ・バインディング・ファイルおよび インターフェース・ファイルを生成します。
  2. コマンド行からバッチ・インポーターを実行する: 以下のステップを実行し、コマンド行からバッチ・インポーターを起動します。
    1. 使用するリソース・アダプターが、ご使用のワークスペースにインポートされていることを確認する。
    2. ステップ 1 で説明されているファイルを保持するディレクトリーを作成する。残りのステップでは、このディレクトリーを inputdir とします。
    3. プラットフォーム・プロパティー・ファイルでホスト・システムの言語および 接続プロパティーを設定する。適切なプラットフォーム・プロパティー・ファイル (CICSECI_PlatformProperties.xml または IMS_PlatformProperties.xml) を %PROGRAMFILES%/IBM/SDP70Shared/plugins/com.ibm.adapter.j2c.command_6.1.0/sample/batch_import (x は Rational 開発ソフトウェアをインストールしたディレクトリーを表します) から inputdir にコピーし、それをテキスト・エディターで開きます。このファイルで、ターゲット環境を反映するデフォルトのプロパティーを 設定します。このファイルで設定されるプロパティーはすべて、 次のステップで説明されるサービス定義ファイル内でオーバーライドすることができます。使用されないプラットフォーム定義を 削除する必要はありません。
    4. 適切なサンプル・サービス定義ファイル (CICSECI_cSample.xml、CICSECI_cobolSample.xml または IMS_cobolSample.xml) を inputdir にコピーし、必要に応じてファイルの名前を変更する。
    5. サンプル・コンテナー・ファイル sampleContainer.xml を inputdir にコピーし、必要に応じてファイルの名前を変更する。テキスト・エディターで結果ファイルを開き、 適切なプラットフォームを設定し、ステップ d で作成されたそれぞれのサービス定義ファイルごとに、ユーザーが作成したサービス定義ファイルを 参照する ImportDefinition 要素を追加します。
    6. ターゲット・ワークスペースを使用する Rational Application Developer のインスタンスが稼働中である場合、 これを閉じる。
    7. コマンド行から、以下のオプションを持つ importBatch コマンドを呼び出す。 importBatch -file=containerFile [-style=generationStyle] [-d workspace] [-e RAD_installdir]
      注: -file パラメーターは、 containerFile の完全なファイル・システム・パスを必要とします。
  3. ワークベンチからパッチ・インポーターを実行する: 以下のステップに従って、ワークベンチからバッチ・インポーターを起動します。
    1. 使用するリソース・アダプターが、ご使用のワークスペースにインポートされていることを確認する。
    2. シンプルなプロジェクトを作成し (Temp という名前を付ける)、 ステップ 1 で説明したファイルを保持する。残りのステップでは、このディレクトリーを inputdir と呼びます。
    3. 『コマンド行からのバッチ・インポーターの実行』から、ステップ cステップ d、および ステップ e を実行する。
    4. batchImport.xml を %PROGRAMFILES%/IBM/SDP70Shared/plugins/com.ibm.adapter.command_6.0.0/script から inputdir にコピーする。sampleContainer.xml を、 ご使用のコンテナー・ファイルの名前に一致するように変更する。
    5. batchImport.xml を右クリックし、 「実行」>「2 Ant ビルド (2 Ant build)」とオプションを選択する。 開いたウィンドウで、「JRE」を選択し、 「ワークスペースと同じ JRE で実行」を選択します。「適用」および「閉じる」をクリックします。 このステップを行う必要があるのは 1 度のみです。
    6. batchImport.xml を右クリックし、 「実行」>「1 Ant ビルド (1 Ant build)」と選択する。

      バッチ・インポーターは COBOL および C ファイルをインポートし、XML ファイルで指定されたプロジェクト (EISProject) およびパッケージ (targetNameSpace から派生) でバインディング・ファイルを生成します。

      注: コマンド行から呼び出された バッチ・インポーターでは、ワークスペース内から実行するのと同様の実行プロセスが行われます。 これを実演するには、 ステップ 1 のファイルが生成されたワークスペースを開きます。 ステップ 3 で手動でインポートしたのと同じファイルが含まれる、Temp と呼ばれるプロジェクトがあります。

フィードバック