Rational Application Developer を使用せずに Java アプリケーションを
作成して、J2C Java Bean および J2EE リソースを生成する場合でも、Rational
Application Developer の J2C オプションを使用して、CCI アプリケーションの
入出力メッセージ用の Java データ・バインディングを作成することができます。
IMS 入出力メッセージ用の Java データ・バインディングを作成したら、これらのデータ・バインディングを CCI アプリケーションで使用できます。以下のステップでは、単純な CCI アプリケーションでデータ・バインディングを使用する方法について説明します。
- メニュー・バーから、「ファイル」>「新規」>「プロジェクト」>「Java プロジェクト」を選択し、
「次へ」をクリックする。
- SimpleCCIApp という名前の Java プロジェクトを作成する。
- その他のデフォルト値をすべて受け入れ、「完了」をクリックする。
- Java パースペクティブに切り替えるかどうかを聞かれたら、「はい」をクリックして、パースペクティブの切り替えを確認する。
- 「OK」をクリックしてリソース (PBookF.jsp) を保管する。
- 「プロジェクト・エクスプローラー」ビューで、「その他のプロジェクト」を展開し、「SimpleCCIApp」という名前の Java プロジェクトを右クリックして、「新規」
>「パッケージ」を選択する。
- 「新規 Java パッケージ」ウィザードで、「名前」フィードに「sample.ims」と入力し、「完了」をクリックする。
- 「パッケージ」ビューで、プロジェクト「SimpleCCIApp」を右クリックし、「プロパティー」>「Java のビルド・パス」を選択する。
- 「プロジェクト」タブで、CCI アプリケーションで
使用する Java データ・バインディングが入ったプロジェクトを選択する。例えば、『IMS Java データ・バインディングの作成』のタスクで
作成したプロジェクト PhoneBookBindings を選択します。
- 「プロジェクト」タブで、使用したい IMS リソース・アダプターが入ったプロジェクトを選択する。
使用したい IMS リソース・アダプターが入ったプロジェクトがない場合、次のステップに従って、IMS リソース・アダプター用の RAR ファイルをワークスペースにインポートすることができます。
- 「Java のビルド・パス」ウィザードを終了する。
- 「プロジェクト・エクスプローラー」ビューで、プロジェクトを右クリックし、「インポート」
>「ファイル・システム」を選択する。
- 「次へ」をクリックする。
- 「ファイル・システム」ウィザードで、「ソース・ディレクトリー」フィールドの横の「参照」をクリックし、ディレクトリーを選択する。
IMS リソース・アダプターの RAR ファイルは、次のディレクトリーから取得することができます。
- <RAD_install_dir>/Resource Adapters/ims (JCA 1.0 IMS リソース・アダプター用)
- <RAD_install_dir>/Resouce Adapters/ims15 (JCA 1.5 IMS リソース・アダプター用)
- ディレクトリーの横のボックスをクリックして、ディレクトリーを選択する。
- 「完了」をクリックする。
- 「ライブラリー」タブで、
「外部 JAR の追加」ボタンをクリックして、
次の JAR ファイルをプロジェクト SimpleCCIApp のビルド・パスに追加する。
これらの 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
- 「OK」をクリックする。
- 「パッケージ」ビューで、「その他のプロジェクト」>「SimpleCCIApp」を展開し、パッケージ「sample.ims」を右クリックして、「新規」
>「クラス」を選択する。
- Java クラス・ウィザードで、次のステップを実行する。
- 「名前」フィールドで、新規クラスの名前として「CCIApp」を入力する。
- 「作成するメソッド・スタブの選択」オプションで、「public static void main(String{}args)」および「継承された抽象メソッド」チェック・ボックスが選択されていることを確認し、「完了」をクリックする。
- 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() ステートメントで使用する値を変更します。
- 「ファイル」>「保管」をクリックする。
- Java アプリケーションを実行するには、「プロジェクト・エクスプローラー」ビューで、「その他のプロジェクト > 「SimpleCCIApp」を展開する。
- 「CCIApp.java」を右クリックして、「実行」>「Java アプリケーション」を選択する。 次の情報が、「コンソール」ビューに表示されます。
Output message is...
MSG: ENTRY WAS DISPLAYED
NAME1: LAST1
NAME2: FIRST1
EXTN: 8-111-1111
ZIP: D01/R01