CCI アプリケーションでの IMS データ・バインディングの使用

Rational Application Developer を使用せずに Java アプリケーションを 作成して、J2C Java Bean および J2EE リソースを生成する場合でも、Rational Application Developer の J2C オプションを使用して、CCI アプリケーションの 入出力メッセージ用の Java データ・バインディングを作成することができます。

IMS 入出力メッセージ用の Java データ・バインディングを作成したら、これらのデータ・バインディングを CCI アプリケーションで使用できます。以下のステップでは、単純な CCI アプリケーションでデータ・バインディングを使用する方法について説明します。
  1. メニュー・バーから、「ファイル」>「新規」>「プロジェクト」>「Java プロジェクト」を選択し、 「次へ」をクリックする。
  2. SimpleCCIApp という名前の Java プロジェクトを作成する。
  3. その他のデフォルト値をすべて受け入れ、「完了」をクリックする。
  4. Java パースペクティブに切り替えるかどうかを聞かれたら、「はい」をクリックして、パースペクティブの切り替えを確認する。
  5. OK」をクリックしてリソース (PBookF.jsp) を保管する。
  6. 「プロジェクト・エクスプローラー」ビューで、「その他のプロジェクト」を展開し、「SimpleCCIApp」という名前の Java プロジェクトを右クリックして、「新規」 >「パッケージ」を選択する。
  7. 「新規 Java パッケージ」ウィザードで、「名前」フィードに「sample.ims」と入力し、「完了」をクリックする。
  8. 「パッケージ」ビューで、プロジェクト「SimpleCCIApp」を右クリックし、「プロパティー」>「Java のビルド・パス」を選択する。
    1. 「プロジェクト」タブで、CCI アプリケーションで 使用する Java データ・バインディングが入ったプロジェクトを選択する。例えば、『IMS Java データ・バインディングの作成』のタスクで 作成したプロジェクト PhoneBookBindings を選択します。
    2. 「プロジェクト」タブで、使用したい IMS リソース・アダプターが入ったプロジェクトを選択する。
      使用したい IMS リソース・アダプターが入ったプロジェクトがない場合、次のステップに従って、IMS リソース・アダプター用の RAR ファイルをワークスペースにインポートすることができます。
      1. 「Java のビルド・パス」ウィザードを終了する。
      2. 「プロジェクト・エクスプローラー」ビューで、プロジェクトを右クリックし、「インポート」 >「ファイル・システム」を選択する。
      3. 次へ」をクリックする。
      4. 「ファイル・システム」ウィザードで、「ソース・ディレクトリー」フィールドの横の「参照」をクリックし、ディレクトリーを選択する。 IMS リソース・アダプターの RAR ファイルは、次のディレクトリーから取得することができます。
        • <RAD_install_dir>/Resource Adapters/ims (JCA 1.0 IMS リソース・アダプター用)
        • <RAD_install_dir>/Resouce Adapters/ims15 (JCA 1.5 IMS リソース・アダプター用)
      5. ディレクトリーの横のボックスをクリックして、ディレクトリーを選択する。
      6. 完了」をクリックする。
    3. 「ライブラリー」タブで、 「外部 JAR の追加」ボタンをクリックして、 次の JAR ファイルをプロジェクト SimpleCCIApp のビルド・パスに追加する。
      • j2ee.jar
      • marshall.jar
      これらの JAR ファイルは、Rational Application Developer によって 生成される Java データ・バインディングで使用されます。 JAR ファイルのバージョンは、選択した IMS リソース・アダプターのバージョンによって異なります。例えば、IMS リソース・アダプター 9.1.0.1.1 を選択し、WebSphere Application Server バージョン 5 のテスト環境をインストールした場合、JAR ファイルは次のディレクトリー・パスにあります。
      • <RAD_install_dir>/runtimes/base_v5/lib
      IMS リソース・アダプター 9.1.0.2 を選択し、WebSphere Application Server バージョン 6 のテスト環境をインストールした場合は、JAR ファイルは次のディレクトリー・パスにあります。
      • <RAD_install_dir>/runtimes/base_v6/lib
    4. OK」をクリックする。
  9. 「パッケージ」ビューで、「その他のプロジェクト」>「SimpleCCIApp」を展開し、パッケージ「sample.ims」を右クリックして、「新規」 >「クラス」を選択する。
  10. Java クラス・ウィザードで、次のステップを実行する。
    1. 「名前」フィールドで、新規クラスの名前として「CCIApp」を入力する。
    2. 作成するメソッド・スタブの選択」オプションで、「public static void main(String{}args)」および「継承された抽象メソッド」チェック・ボックスが選択されていることを確認し、「完了」をクリックする。
  11. CCIApp.java ソースを編集する。次のサンプル・コードをコピーして、ファイルに貼り付けます。
    /*
     *
     * TODO To change the template for this generated file go to
     * Window - Preferences - Java - Code Style - Code Templates
     */
    package sample.ims;
    
    import com.ibm.connector2.ims.ico.*;
    import javax.resource.cci.*;
    
    /**
     * 
     *
     * TODO To change the template for this generated type comment go to
     * Window - Preferences - Java - Code Style - Code Templates
     */
    public class CCIApp {
    
        public static void main(String[] args) {
            
            Connection conn = null;
            
            try{
                IMSManagedConnectionFactory mcf = new IMSManagedConnectionFactory();
                mcf.setHostName("yourHostName");
                mcf.setPortNumber(new Integer(0));
                mcf.setDataStoreName("yourDataStoreName");
                
                ConnectionFactory cf = (ConnectionFactory) mcf.createConnectionFactory();
                IMSConnectionSpec cSpec = new IMSConnectionSpec();
                
                conn = cf.getConnection(cSpec);
                
                Interaction interAction = conn.createInteraction(); 
                IMSInteractionSpec iSpec = new IMSInteractionSpec();
                iSpec.setInteractionVerb(1);        // SEND_RECEIVE
                iSpec.setImsRequestType(1);            // TRANSACTION
                iSpec.setCommitMode(1);                // SEND_THEN_COMMIT
                
                sample.ims.INPUTMSG input = new INPUTMSG();
                input.setIn__ll((short) input.getSize());
                input.setIn__zz((short) 0);
                input.setIn__trcd("IVTNO");
                input.setIn__cmd("DISPLAY");
                input.setIn__name1("LAST1");
                
                sample.ims.OUTPUTMSG output = new sample.ims.OUTPUTMSG();
                interAction.execute(iSpec, input, output);
                
                System.out.println(
                        "Output message is... " +
                        "¥nMSG: " + output.getOut__msg() +
                        "¥nNAME1: " + output.getOut__name1() +
                        "¥nNAME2: " + output.getOut__name2() +
                        "¥nEXTN: " + output.getOut__extn() +
                        "¥nZIP: " + output.getOut__zip() 
                );
            }
            catch (Exception e)
            {
                System.out.println("Caught exception is: " + e.getMessage());
            }
        }
    }

    CCIApp.java は、単純な、二層の非管理 Java アプリケーション・ プログラムです。これは、Rational Application Developer の「CICS/IMS Java データ・バインディング (CICS/IMS Java Data Binding)」ウィザードで作成された Java データ・バインディング sample.ims.INPUTMSG および sample.ims.OUTPUTMSG を使用します。ご使用の環境に合わせて CCIApp.java を編集し、setHostName()、setPortNumber()、および setDataStoreName() ステートメントで使用する値を変更します。

  12. ファイル」>「保管」をクリックする。
  13. Java アプリケーションを実行するには、「プロジェクト・エクスプローラー」ビューで、「その他のプロジェクト > 「SimpleCCIApp」を展開する。
  14. CCIApp.java」を右クリックして、「実行」>「Java アプリケーション」を選択する。 次の情報が、「コンソール」ビューに表示されます。
    Output message is...
    MSG: ENTRY WAS DISPLAYED
    NAME1: LAST1
    NAME2: FIRST1
    EXTN: 8-111-1111
    ZIP: D01/R01
関連タスク
IMS Java データ・バインディングの作成
J2C Java Bean の作成および IMS への接続プロパティーの追加
データとして入力するための InteractionSpec および ConnectionSpec プロパティーの公開
InteractionSpec 出力プロパティーのデータとしての公開
J2C Java Bean からの Web ページ、Web サービス、または EJB の作成
ご利用条件 | フィードバック
(C) Copyright IBM Corporation 2000, 2005. All Rights Reserved.
(C) Copyright IBM Japan 2005.