トランザクション・バッチ・アプリケーションのセットアップ手順

このサンプルには、EJB プロジェクト (XDCGIVTEJBs) および EAR プロジェクト (XDCGIVTEAR) と関連している XDCGIVT バッチ・プロジェクトが含まれています。XDCGIVT アプリケーションは、ファイルの読み取りと書き込みを行うトランザクション・バッチ・アプリケーションです。

始める前に

  1. 以下のサポートされているサーバーのいずれかをインストールします。
    • WebSphere® Application Server V8.5
    • WebSphere Application Server V8.0
    • WebSphere Application Server V8.0 (WebSphere Extended Deployment Compute Grid V8.0 を併用)
    • WebSphere Application Server V7.0 with Feature Pack for Modern Batch
  2. バッチ・アプリケーションを受け入れるための WebSphere Application Server の構成
    ヒント: 最新バッチ・ジョブ管理コンソールが開けない場合、アプリケーション・サーバーはバッチ・アプリケーションを受け入れる準備が整っていません。例えば、「サーバー」 ビューに移動し、サーバーを右クリックして 「最新バッチ・ジョブ管理コンソール」を選択した場合、以下のいずれかのエラー・メッセージが示される可能性があります。
    • WebSphere Application Server V8.0 または V8.5 の場合:
      Web ページが見つかりません
    • WebSphere Application Server V7.0 with Feature Pack for Modern Batch の場合:
      404 error:  JSPG0036E: Failed to find resource /jmc/console.jsp
    これらのエラー・メッセージを解決するには、WebSphere Application Server の構成によるバッチ・アプリケーションの受け入れ タスクをサーバーで完了し、次にこのページのサンプル実行に関する情報に戻ります。

このタスクについて

サーバー上でサンプルを実行するには、以下のステップを行います。

手順

  1. このサンプルを実行するサーバーのサポートされているバージョンを決定するには、「サーバー」ビューでサーバーを追加します。
    • WebSphere Application Server V7.0
    • WebSphere Application Server V8.0
    • WebSphere Application Server V8.5
    1. 「サーバー」ビューを開くには、ツールバーで「ウィンドウ」 > 「ビューの表示」 > 「サーバー」を選択します。
    2. サーバー・エントリーを追加するには、「サーバー」ビューを右クリックし、「新規」 > 「サーバー」を選択します。「新規サーバー」ウィザードの説明にしたがって、「WebSphere Application Server V7.0」「WebSphere Application Server V8.0」、または「WebSphere Application Server V8.5」のいずれかを選択します。 詳しくは、WebSphere Application Server の作成のトピックを参照してください。
  2. サンプルをワークスペースにインポートします。
    1. 製品のヘルプ・システムで、このサンプルのインポートリンクをクリックして、トランザクション・バッチ・アプリケーションのサンプルをワークスペースにインポートしてください。
    2. 「インポート」 ウィザードで、デフォルト設定を受け入れ、「終了」をクリックします。
    3. このサンプルを WebSphere Application Server V8.0 または V8.5 上で実行する場合、ターゲット・ランタイム環境のデフォルト設定を変更する必要があります。 このサンプルのデフォルト環境は WebSphere Application Server V7.0 に設定されています。 「サンプル・ランタイム・ターゲット」 ウィザードは、ワークベンチに WebSphere Application Server V7.0 ランタイム環境が含まれていない場合のみ開きます。
      • 「サンプル・ランタイム・ターゲット」 ウィザードが開いた場合、このワークベンチには WebSphere Application Server V7.0 ランタイム環境が含まれていません。
        1. 「サンプルのインポート後に、互換ランタイムまたはスタブを手動でインストール」オプションを選択し、「終了」をクリックします。
        2. 「ワークスペースのマイグレーション」ページで、「次へ」をクリックします。
        3. 「マイグレーションが必要なワークスペース・プロジェクト」ページで、「次へ」をクリックします。
        4. 「マイグレーション・プロジェクトのリソース」ページで、「 次へ」をクリックします。
        5. 「未定義サーバー・ランタイム」ページ上にある「サーバー・ランタイム」リストで、was.base.v7 エントリーについて、「新規サーバー・ランタイム」列の下にある「WebSphere Application Server v8.0」または「WebSphere Application Server v8.5」を選択します。 「次へ」をクリックします。
        6. 「マイグレーション開始の完了」ページで、「終了」をクリックします。
        7. 「マイグレーションの検証」ウィンドウで、「OK」をクリックします
      • 「サンプル・ランタイム・ターゲット」 ウィザードが開かない場合、このワークベンチには WebSphere Application Server V7.0 ランタイム環境が含まれています。
        1. 「エンタープライズ・エクスプローラー」ビューで、「SimpleCIEAR」プロジェクトを右クリック して、「プロパティー」 > 「ターゲット・ランタイム」を選択します。
        2. 「WebSphere Application Server V8.0」または「WebSphere Application Server V8.5」をチェック・ボックスで選択し、「OK」をクリックします。
    4. インポートが完了すると、「エンタープライズ・エクスプローラー」ビューに以下のプロジェクトが表示されます。
      これは、インポートされた XDCGIVT サンプル・プロジェクトを含む「エンタープライズ・エクスプローラー」ビューの画面取りです。
  3. ローカル WebSphere Application Server の場合、ローカル Derby へのデータベース接続を作成します。
    重要: この手順は、ご使用の WebSphere Application Server が、開発ワークベンチと同じコンピューター上にある場合にのみ実行してください。リモート WebSphere Application Server の場合、 リモート・サーバーと同じコンピューター上に IVTDB データベースを作成してしまうため、ローカル Derby データベース接続を作成するこの手順はスキップしてください。
    1. 「データ・ソース・エクスプローラー」ビューの「データベース接続」フォルダーを右クリックし、「新規」を選択します。 「新規接続」ウィザードが開きます。
    2. 「データベース・マネージャーの選択」リストで、「Derby」を選択します。
    3. 「JDBC ドライバー」リストで、「Derby 10.2 - 組み込み JDBC ドライバー (デフォルト)」を選択します。
    4. 「ドライバー定義の編集」(これは、「ドライバー定義の編集」ボタンのグラフィカル・アイコンです。) ボタンをクリックします。 「Jar リストの編集」ウィザードが開きます。
    5. 「ドライバー・ファイル」リストで、derby.jar エントリーを選択し「JAR/Zip の削除」ボタンをクリックします。 「ドライバー・ファイル」リストは、空になるはずです。
    6. 「JAR/Zip の追加」ボタンを使用して、次の 4 つの JAR ファイルを <WAS_directory>¥derby¥lib ディレクトリー (<WAS_directory> は、ローカル WebSphere Application Server のインストール・ディレクトリー) から追加し、「OK」をクリックします。
      • derby.jar
      • derbyclient.jar
      • derbynet.jar
      • derbytools.jar
      これは、Derby JDBC ドライバー・ファイルを「Jar リストの編集」ウィザードに追加した画面取りの例です。
      これは、「Jar リストの編集」ウィザードの画面取りです。
    7. 「新規接続」ダイアログで、「データベース・ロケーション」フィールドの「プロパティー」セクションの下で、<workspace_directory>/XDCGIVT/IVTDB ディレクトリーを指定します。ここで、<workspace_directory> は、ワークスペースのディレクトリーです。 「終了」をクリックします。
    8. 「データ・ソース・エクスプローラー」ビューで、 「データベース接続」フォルダーを展開して「IVTDB」を右クリックし、「切断」を選択します。
  4. リモート WebSphere Application Server の場合は、リモート・サーバーと同じコンピューターに IVTDB データベースを作成します。
    重要: この手順は、ご使用の WebSphere Application Server が、開発ワークベンチのリモート・コンピューターにある場合にのみ実行してください。ローカル WebSphere Application Server の場合は、この手順をスキップして次の手順を続行してください。
    1. java –version コマンドを実行します。

      このコマンドを実行すると、Java™ Version 1.6 以降がインストールされていて、使用しているオペレーティング・システムの PATH 変数に含まれているかを検査できます。

    2. CreateIVTTablesDerby.ddl ファイルを見つけます。
      • WebSphere Application Server V7.0 (Feature Pack for Modern Batch を適用済み) の場合は、CreateIVTTablesDerby.ddl ファイルのコピーをリモート・コンピューターの次のディレクトリーで使用可能です。

        これは、Linux を示すグラフィカル・アイコンです。これは、HP-UX を示すグラフィカル・アイコンです。これは、Solaris を示すグラフィカル・アイコンです。これは、AIX を示すグラフィカル・アイコンです。これは、z/OS を示すグラフィカル・アイコンです<remote_WAS_directory>/feature_packs/BATCH/longRunning

        これは、Windows を示すグラフィカル・アイコンです。 <remote_WAS_directory>¥feature_packs¥BATCH¥longRunning

        ここで、<remote_WAS_directory> は、リモート WebSphere Application Server のインストール・ディレクトリーです。
      • あるいは、ワークベンチを実行しているローカル・コンピューターでは、CreateIVTTablesDerby.ddl ファイルのローカル・コピーが <workspace_directory>¥XDCGIVT¥data¥ddl¥CreateIVTTablesDerby.ddl (<workspace_directory> はワークスペースのディレクトリー) にあります。リモート・サーバーと同じコンピューターに CreateIVTTablesDerby.ddl ファイルのコピーを作成します。
    3. コマンド・プロンプトを開き、Derby データベース・ディレクトリーに移動します。

      これは、Linux を示すグラフィカル・アイコンです。これは、HP-UX を示すグラフィカル・アイコンです。これは、Solaris を示すグラフィカル・アイコンです。これは、AIX を示すグラフィカル・アイコンです。これは、z/OS を示すグラフィカル・アイコンです<remote_WAS_directory>/derby/databases

      これは、Windows を示すグラフィカル・アイコンです。 <remote_WAS_directory>¥derby¥databases

    4. 次のコマンドを実行します。
      これは、Linux を示すグラフィカル・アイコンです。これは、HP-UX を示すグラフィカル・アイコンです。これは、Solaris を示すグラフィカル・アイコンです。これは、AIX を示すグラフィカル・アイコンです。これは、z/OS を示すグラフィカル・アイコンです
      java -Djava.ext.dirs=<remote_WAS_directory>/derby/lib 
      -Dij.protocol=jdbc:derby: org.apache.derby.tools.ij 
      <path>/CreateIVTTablesDerby.ddl
      ここで、<remote_WAS_directory> はリモートの WebSphere Application Server のインストール・ディレクトリーで、<path> はリモート・サーバーと同じコンピューター内にある CreateIVTTablesDerby.ddl ファイルへのディレクトリー・パスです。
      例えば:
      java -Djava.ext.dirs=/opt/IBM/WebSphere/AppServer/derby/lib 
      -Dij.protocol=jdbc:derby: org.apache.derby.tools.ij 
      /opt/IBM/WebSphere/AppServer/feature_packs/BATCH/longRunning/CreateIVTTablesDerby.ddl
      ヒント: ファイル・パスに空白が含まれている場合は、ファイル・パス中の空白文字をエスケープしなければなりません。
      これは、Windows を示すグラフィカル・アイコンです。
      java -Djava.ext.dirs=<remote_WAS_directory>¥derby¥lib
      -Dij.protocol=jdbc:derby: org.apache.derby.tools.ij 
      <remote_WAS_directory>¥feature_packs¥BATCH¥longRunning¥CreateIVTTablesDerby.ddl
      ここで、<remote_WAS_directory> は、リモート WebSphere Application Server のインストール・ディレクトリーです。
      例えば:
      java -Djava.ext.dirs="C:¥Program Files¥IBM¥WebSphere¥AppServer¥derby¥lib"
      -Dij.protocol=jdbc:derby: org.apache.derby.tools.ij 
      "C:¥Program Files¥IBM¥WebSphere¥AppServer¥feature_packs¥BATCH¥longRunning¥CreateIVTTablesDerby.ddl"
      ヒント: ファイル・パスにスペースが含まれている場合は、ファイル・パスを引用符で囲まなければなりません。
  5. デプロイメント記述子にデータ・ソースを構成します。
    1. 「エンタープライズ・エクスプローラー」ビューで、XDCGIVTEAR プロジェクトを展開し、「デプロイメント記述子: XDCGIVTEAR」を右クリックし、「開く」を選択します。 「アプリケーション・デプロイメント記述子」エディターが開きます。
    2. 「デプロイメント」タブを選択します。
    3. 「データ・ソース」セクションの下の「上で選択されたデータ・ソースで定義されているリソース・プロパティー」リストで、「databaseName」を選択し「編集」ボタンをクリックします。 「リソース・プロパティーの編集」ウィザードが開きます。
    4. 「値」フィールドで、IVTDB データベースへのファイル・パスを指定します。データベースがローカルまたはリモート WebSphere Application Server のどちら向けに作成されているか、およびサーバーおよびデータベースを実行するオペレーティング・システムによって、ファイル・パスは異なります。
      ローカル WebSphere Application Server
      これは、Linux を示すグラフィカル・アイコンです。<workspace_directory>/XDCGIVT/IVTDB
      これは、Windows を示すグラフィカル・アイコンです。<workspace_directory>/XDCGIVT/IVTDB
      ここで <workspace_directory> は、ワークスペースのディレクトリーです。
      リモート WebSphere Application Server
      これは、Linux を示すグラフィカル・アイコンです。これは、HP-UX を示すグラフィカル・アイコンです。これは、Solaris を示すグラフィカル・アイコンです。これは、AIX を示すグラフィカル・アイコンです。これは、z/OS を示すグラフィカル・アイコンです<remote_WAS_directory>/derby/databases/IVTDB
      これは、Windows を示すグラフィカル・アイコンです<remote_WAS_directory>/derby/databases
      ここで、<remote_WAS_directory> は、リモート WebSphere Application Server のインストール・ディレクトリーです。
    5. 「OK」ボタンをクリックします。
    6. 「アプリケーション・デプロイメント記述子」エディターの変更点を、Ctrl + s を押して保存します。
  6. サンプルを実行するための入力値を変更します。
    ヒント: この手順は、XDCGIVT サンプルに含まれているそれぞれのバッチ・ジョブ・ファイルについて繰り返す必要があります。
    1. 「エンタープライズ・エクスプローラー」で、「XDCGIVT」 > 「xJCL」フォルダーを展開します。 次のバッチ・ジョブ・ファイルがあります。
      XDCGIVTbyte2bytexJCL.xml
      バイナリー・ファイルを別のバイナリー・ファイルにコピーして、2 つのファイルを比較します。
      XDCGIVTtxt2db2txtxJCL.xml
      テキスト・ファイルをデータベースにコピーし、データベースのエントリーを別のテキスト・ファイルにコピーし、2 つのファイルを比較します。
      XDCGIVTtxt2txtxJCL.xml
      テキスト・ファイルを別のテキスト・ファイルにコピーして、2 つのファイルを比較します。
      ジョブ は、XML ジョブ制御言語 (xJCL) と呼ばれる XML (Extensible Markup Language) の方言を使用して表現されます。 すべてのジョブに、次の情報が含まれています。
      • 処理を実行するバッチ・アプリケーションの ID
      • 処理を完了するために実行する必要がある 1 つ以上のジョブ・ステップ
      • それぞれのジョブ・ステップのロジックを提供するアプリケーション内の成果物の ID
      • アプリケーション成果物に追加コンテキストを提供する各ジョブ・ステップのキーと値の組
      詳しくは、WebSphere Application Server のインフォメーション・センターにある、バッチ・アプリケーション、ジョブ、およびジョブ定義のトピックを参照してください。
    2. 上記のバッチ・ジョブ・ファイルの 1 つを右クリックし、「開く」を選択します。 XJCL エディターが開きます。
    3. XJCL エディターの「設計」タブで、「バッチ・ジョブ構造」セクションの下の、「ジョブ (XDCGIVT)」 > 「置換プロパティー」ノードを展開します。

      置換プロパティー では、シンボリック変数の名前と値の組を定義します。 xJCL ファイルでは、シンボリック変数は ${variable-name} という形式の式になり、それがコメントの外側に置かれていなければ、ファイルは整形式の文書になるものです。 シンボリック変数の置換は実行時に行われます。実行時には、文字列 ${variable-name} は xJCL ファイルが発行される際のプロパティーの値に置き換えられます。

      各バッチ・ジョブ・ファイルには、変更が必要な次の 2 つの置換プロパティーがあります: inputDataStream および outputDataStream
      表 1. . このテーブルは、inputDataStream および outputDataStream 置換プロパティーに指定されているデフォルト値をリストしています。
        inputDataStream outputDataStream
      XDCGIVTbyte2bytexJCL.xml /data/input-txlist.txt /data/output-txlist.txt
      XDCGIVTtxt2db2txtxJCL.xml /data/input.txt /data/output.txt
      XDCGIVTtxt2txtxJCL.xml /data/input-text.txt /data/output-text.txt
      上記のテーブルは、inputDataStream および outputDataStream 置換プロパティーに指定されているデフォルト値をリストしています。/data/ を、このサンプルを実行した際にテキスト・ファイルを書き込むファイル・システム上の読み取りと書き込み権限がある既存ディレクトリーに置換する必要があります。例えば、C:¥temp¥input.txt などです。
      ヒント: このテキスト・ファイルのファイル名には、ジョブ名とジョブ番号が付加されます。WebSphere Application Server for z/OS® の場合、内容を表示するために、テキスト・ファイルは拡張 2 進化 10 進コード (EBCDIC) に変換されなければなりません。
    4. XJCL エディターで、「プロパティー (inputDataStream)」ノードを選択します (この手順を「プロパティー (outputDataStream)」でも繰り返します)。 「詳細」セクションの下の、「値」フィールドで、/data/ をファイル・システム・ディレクトリーの既存ディレクトリーに置き換えます。例えば、C:¥temp¥input-txlist.txt などです。
    5. XJCL エディターの変更点を、CTRL+S を押して保存します。
  7. 次のようにして、サーバー上でサンプルを実行します。
    1. 「サーバー」ビューで、サーバーを右クリックし「開始」を選択します。 「サーバー」ビューでサーバーの状態と状況が「始動済み」および「同期済み」に変更するまで待って、サーバーが始動したことを確認します。
    2. 「サーバー」ビューで、サーバーを右クリックし「追加および削除」を選択します。「追加および削除」ウィザードが開きます。「使用可能」リストの下の、XDCGIVTEAR アプリケーションを選択し「追加」ボタンをクリックします。 「追加および削除」ウィザードで、「終了」ボタンをクリックします。 「サーバー」ビューでアプリケーションの状態と状況が「始動済み」および「同期済み」に変更するまで待って、アプリケーションが公開されて始動したことを確認します。
    3. 「エンタープライズ・エクスプローラー」ビューで、「XDCGIVT」 > 「xJCL」フォルダーを展開し、XDCGIVT バッチ・ジョブ・ファイルの 1 つを右クリックし、「実行」 > 「最新バッチ・ジョブ」を選択します。 「実行構成」ウィザードが開きます。
    4. セキュリティーが使用可能な場合、「このサーバー上でセキュリティーを有効にする」チェック・ボックスを選択してサーバーが保護されるようにしてください。「ユーザー ID」フィールドおよび「パスワード」フィールドで、ジョブ・スケジューラー用のユーザー名とパスワードを指定します。
      ヒント: どのユーザーまたはグループがセキュリティー・ロール (lradmin および lrsubmitter) にマップされているかは、管理コンソールを開き、「システム管理」 > 「ジョブ・スケジューラー」 > 「ユーザー/グループ・マッピングへのセキュリティー・ロール」を選択して確認できます。
    5. 「実行の構成」ウィザードで、「実行」ボタンをクリックしてバッチ・ジョブ・ファイルを発行します。「最新バッチ・ジョブ管理コンソール」が開きます。
  8. 「最新バッチ・ジョブ管理コンソール」にジョブとログを表示します。
    1. 「最新バッチ・ジョブ管理コンソール」の、「ジョブ管理」セクションの左側のペインで、「ジョブの表示」リンクをクリックします。 ジョブ・テーブルが表示され、サブミットされたジョブがリストされます。
      これは、「最新バッチ・ジョブ管理コンソール」の画面取りです。
    2. 「ジョブ ID」列の下で、XDCGIVT:<jobID> リンクをクリックします。 ジョブ・ログが表示されます。「ダウンロード」ボタンをクリックして、ジョブ・ログのコピーを開いたり、それを保存したりできます。
      ジョブ・ログ には、次の情報が含まれています。
      • ジョブを実行するために使用された xJCL のコピー (xJCL 置換値を含む)。
      • ジョブに対応した主要なライフサイクル・イベントを通信する一連のシステム・メッセージ。ジョブ・ログに記録されているシステム・イベントの例は、ジョブの開始と終了およびステップです。
      • ジョブ・ステップ・プログラムによる標準出力と標準エラー出力に書き込まれた一連のメッセージ。
      ジョブ・ログに関する詳細は、WebSphere Application Server のインフォメーション・センターにあるジョブ・ログのトピックを参照してください。

フィードバック