このチュートリアルは、リモート・システム上で COBOL アプリケーションを実行する場合の
Rational® Developer for System z® の機能の一部を説明します。区分データ・セットを
割り振る方法、z/OS® プロジェクトを
作成する方法、COBOL ソースから実行可能コードをビルドする方法、リモート・システムでアプリケーションを実行する方法、
およびリモート・システムでアプリケーションをデバッグする方法について説明します。
始める前に
このチュートリアルを開始する前に、z/OS システム管理者が
z/OS ビルド・サーバー
およびリモート・システム・エクスプローラー・サーバーを構成し、始動していることを確認してください。
これらの必須コンポーネントのインストールおよび構成についての情報は、インストール CD 1 にある「
ホスト構成ガイド」を参照してください。
手順
- z/OS プロジェクト・パースペクティブへの切り替えを行います。
- ワークベンチで、「ウィンドウ」>「パースペクティブを開く」>「その他」を選択します。 「パースペクティブを選択 (Select Perspective)」ウィザードが開きます。
- 「z/OS プロジェクト」をクリックします。
- 「OK」をクリックします。 「z/OS プロジェクト」パースペクティブが開きます。
- リモート・システムへの接続を作成します。
- 「リモート・システム」ビューで、「新規接続」を展開し、「z/OS」を選択します。
- 右クリックし、「新規接続」を選択します。 「新規接続」ウィンドウが開きます。
- ドロップダウン・リストからプロファイル名を選択します。
- このウィンドウの各フィールドに以下の値を入力します。
- ホスト名
- 接続先のシステムの TCP/IP アドレスを入力します。
- 接続名
- システムを呼び出すための短縮名を入力します。例えば、MYSYSTEM と入力します。
- 説明
- 選択項目の説明を入力します。
- ホスト名の検査
- 接続を試行する前に、ホスト名が有効であるかを検査するには、このチェック・ボックスを選択します。
- 「MVS ファイル」、「z/OS UNIX ファイル」、および「z/OS
UNIX シェル」の各サブシステムのデフォルト値を使用して接続を定義するには、「終了 (Finish)」をクリックします。これらのサブシステムのプロパティーを設定するには、「次へ」をクリックします。 ウィザードに各サブシステムのプロパティー・ウィンドウが開きます。これらのページには、各サブシステムによって使用される、基礎となるサービスのプロパティーが表示されます。
- 「MVS ファイル」ページでは、以下のサーバー・ランチャーから選択できます。どのオプションを選べばいいのか分からない場合は、システム管理者にお問い合わせください。
- リモート・デーモン: サーバーを始動するために、リモート・デーモンを使用して接続を確立します。このオプションを使用するためには、
リモート・システムでリモート・デーモンを実行している必要があります。
このオプションを選択した場合は、以下の追加オプションを指定してください。
- デーモン・ポート: 有効なポート番号を指定してください。
- 認証方式: リモート・システムでの認証方式を選択します。ユーザー ID とパスワードを使用してリモート・システムにログオンする場合は「ユーザー ID/パスワード」を選択します。クライアント証明書認証を使用する場合は、「証明書」を選択します。
クライアント証明書認証は、IC カード (例えばスマート・カード) のようなデバイスを使用してリモート・システムに接続する必要のあるユーザーを対象とします。詳しくは、クライアント証明書認証を使用する接続の作成を参照してください。
このオプションを選択した場合は、適切な特権を持つユーザー ID を使用して、サーバー・デーモンを開始する必要があります。
- REXEC: サーバーを始動するために、REXEC サービスを使用して接続を確立します。このオプションを使用するためには、
リモート・システムで REXEC サービスを実行している必要があります。
このオプションを選択した場合は、以下の追加オプションを指定してください。
- ホストにインストールされているサーバーのパス: リモート・システム上でのサーバーのインストール先の有効なパス・コマンドを指定してください。REXEC コマンドを実行しているディレクトリーへの相対パスを指定するか、または
サーバーがインストールされている場所の絶対パスを指定できます。
例えば、dstore または /usr/bin/dstore と指定できます。
- サーバー起動コマンド: zSeries® の場合、このコマンドは server.zseries です。
- ポート: 有効なポート番号を指定してください。
- SSL の自動検出: SSL がサーバー上で実行されているかどうかを自動的に検出し、実行されている場合は SSL を使用して接続します。
- ネットワーク通信に SSL を使用: SSL を使用して接続します。
- 稼働サーバーに接続: 既知のポートですでに実行しているサーバーとの接続を確立します。このオプションを使用するためには、
リモート・システム・エクスプローラーで接続を定義する前にサーバーを始動する必要があります。
サーバーに接続する前に、サブシステム・プロパティー・ページでポートを指定する必要があります。
このオプションを選択した場合は、SSL を使用して接続するために「ネットワーク通信に SSL を使用」オプションを指定する必要もあります。
- SSH: セキュア・シェル・サポートを使用して接続を確立します。このオプションを使用するためには、
リモート・システムで SSH サービスを実行している必要があります。このオプションを選択した場合は、
リモート・システム上でのサーバーのインストール先の有効なパス・コマンドを指定してください。
また、サーバー起動
コマンドも指定する必要があります。zSeries の場合、このコマンドは server.zseries です。パスワードを使用してサーバーにログオンする場合は、「パスワード認証」認証を選択し、サーバーでの認証のために秘密鍵と公開鍵のペアを使用してログオンする場合は、「鍵認証」を選択します。鍵認証を選択したが鍵ペアが存在しない場合は、必要な鍵ペアが自動的に生成され、以降の要求用にリモート SSH サーバーと交換されます。
この交換を使用可能にするには、リモート・システムに対するパスワードの入力を求めるプロンプトが出されます。
鍵認証を使用して SSH を介した、リモート・システムに対する後続の要求には、パスワードは不要です。
- 「完了」をクリックします。 5 つのノードを持つ新規接続のショート・ネームが、「リモート・システム」ビューの接続名の下に表示されます。
- 「z/OS UNIX ファイル」は z/OS UNIX ファイル・サブシステムです。このノードには、「マイ・ホーム」と「ルート」という 2 つのフォルダーがあります。このノードに新規フィルターを追加することによって、追加の z/OS UNIX ファイル・フォルダーを作成できます。
- 「z/OS UNIX シェル」はコマンド・サブシステムです。z/OS UNIX コマンド・シェルを開くと、その名前がこのノードの下に表示されます。
- 「MVS ファイル」は MVS™ ファイル・サブシステムです。このノードには、3 つのフォルダーがあります。「ユーザー・データ・セット」には、フィルター userid.* (userid はリモート・システムへの接続に使用したユーザー ID) と一致する MVS ファイルが表示されます。
このノードに新規フィルターを追加することによって、追加の MVS ファイル・フォルダーを作成できます。
「MVS ファイル」設定ページを使用して、データ・セットのソート順を変更できます。「検索したデータ・セット」には、「データ・セットの検索」アクションを使用して検索され、追加されたデータ・セット名が表示されます。「ユーザー検索照会」は、「リモート z/OS 検索」ビューで実行して保存した検索照会を表示します。
- 「TSO コマンド」はコマンド・サブシステムです。TSO コマンド・シェルを開くと、その名前がこのノードの下に表示されます。
- 「JES」は JES サブシステムです。このノードには 2 つのフォルダーがあります。「ユーザー・ジョブ」には、リモート・システムへの接続に使用したユーザー ID の下で実行依頼されたジョブが表示されます。このノードに新規フィルターを追加することによって、追加のジョブ・フォルダーを作成できます。「検索したジョブ」には、「ジョブの検索」アクションを使用して検索され、追加されたジョブが表示されます。
- リモート・システムに接続します。
- 「リモート・システム」ビューでリモート・システム接続を選択し、「接続」をクリックします。
- 「パスワードの入力」ウィンドウで、ユーザー ID とパスワードを入力して「OK」をクリックします。
- リモート・システムに区分データ・セットを割り振ります。 これらの特性を使用してそれぞれの区分データ・セットを割り振るには、次のデータ・セット名のリストの下に記述されているステップを使用します。以下の区分データ・セット名の <HLQ> は、リモート・システムにログオンする際に使用したユーザー ID です。
表 1. | データ・セット名 |
カテゴリー |
タイプ |
| <HLQ>.REMOTE.COBOL |
ソース |
COBOL |
| <HLQ>.COBOL.OUTPUT* |
LISTING |
COBOL |
| <HLQ>.COBOL.SYSDEBUG* |
LISTING |
COBOL |
| <HLQ>.COBOBJS.OBJ* |
ソース |
COBOL |
| <HLQ>.COBOL.COPYLIB* |
ソース |
COBOL |
注: * マークが付いたデータ・セットは、
7のステップに説明のある ELAXFCOC プロシージャーの COBOL ステップで必要なデータ・セットです。これらのデータ・セット名は、COBOL ステップ・オプションで参照されるデータ・セット名と一致している必要があります。
これらの各データ・セットに対して、以下の手順を実行します。- 「リモート・システム」ビューで「MVS ファイル」サブシステムを選択し、「新規」>「区分データ・セットの割り振り」をクリックします。
- 「区分データ・セットの割り振り」ページで、以下のタスクを実行します。
- 「ホストの短縮名」フィールドに用意されている名前を受け入れます。
- ドロップダウン・リストからデータ・セットの高位修飾子を選択します。
- 「データ・セット名」フィールドで、高位修飾子とピリオドの組み合わせに続く名前を入力します。例えば、高位修飾子が MYFILES である場合に、データ・セット MYFILES.REMOTE.COBOL を割り振るには、「データ・セット名」フィールドにストリング REMOTE.COBOL を指定します。
- 「次へ」をクリックします。
- 「データ・セットの割り振り」ページで「使用タイプごとに特性を指定」ラジオ・ボタンを選択し、表に示すように、各リスト・ボックスから対応する値を選択します。
- 「完了」をクリックします。
- このチュートリアルのサンプル・ソース・コードを取得します。
- 「ファイル」>「新規」>「例 (Example)」をクリックします。
「ワークステーション COBOL」を展開し、
リストの「COBOL サンプル 1」をクリックします。
「次へ」をクリックします。
- プロジェクト名として LocalCOBOLSample を指定し、「完了」をクリックします。
- COBOL ソース・ファイルの PrintApp.cbl と StartApp.cbl を、<HLQ>.REMOTE.COBOL 区分データ・セットにコピーします。
- z/OS プロジェクトおよび MVS サブプロジェクトを作成します。
- 「z/OS プロジェクト」ビューで、「新規」>「z/OS プロジェクト」をクリックします。 「新規 z/OS プロジェクト」ウィザードが開きます。
- 「プロジェクト名」フィールドに、SampleProject を入力します。
- 「MVS サブプロジェクトの作成」を選択し、「終了 (Finish)」をクリックします。
- 「サブプロジェクト名」フィールドに、RemoteCOBOLSample を入力します。 「高位修飾子」のデフォルト設定はリモート・システムにログオンしたときに使用したユーザー ID です。
- 「新規 MVS サブプロジェクト」ウィンドウの「プロパティー・グループ」領域で、「新規プロパティー・グループを作成して、それをサブプロジェクトに関連付ける」をクリックします。
- プロパティー・グループに SamplePropGroup という名前を付けます。
- 「終了 (Finish)」をクリックして、プロパティー・グループを編集します。
- 新規プロパティー・グループにビルド・オプションを設定するには、以下の手順を実行します。
- プロパティー・グループ・エディターで、「COBOL」タブをクリックしてから「プロシージャーおよびステップ」をクリックします。
- 「ELAXFCOC」プロシージャーを展開し、「COBOL」をダブルクリックして、COBOL ステップを編集します。
- 以下の JCL をコピーし、「追加の JCL」テキスト・ボックスに貼り付けます。
//SYSOUT DD SYSOUT=*
//SYSPRINT DD SYSOUT=*
//SYSIN DD *
Ben
Q
/*
//
- プロパティー・グループ・エディターの「JCL」タブをクリックし、デフォルトの JOB カードに、リモート・システム上のプロシージャー・ライブラリーを指す PROCS
ステートメントが含まれていることを確認します。 プロシージャー・ライブラリーの場所が分からない場合は、システム管理者にお問い合わせください。
- 新規プロパティー・グループを保存して終了します。
- <HLQ>.REMOTE.COBOL 区分データ・セットを RemoteCOBOLSample サブプロジェクトに追加します。
- 「リモート・システム」ビューでデータ・セットを選択します。
- 右クリックし、「サブプロジェクトに追加」を選択します。
- サブプロジェクト名を入力または選択し、「完了」をクリックします。
- アプリケーションをビルドし、実行します。
- RemoteCOBOLSample サブプロジェクトで、「STARTAPP.cbl」を選択して「エントリー・ポイントとして指定」をクリックします。
- 「RemoteCOBOLSample」を選択してから、「サブプロジェクトを再ビルド」をクリックします。 ビルド操作の最後に、リスト、オブジェクト・デック、および生成済みロード・モジュールがサブプロジェクトに追加されます。
- 生成済みロード・モジュールを選択し、「実行」>「実行」をクリックしてアプリケーションを実行します。または、「実行」>「デバッグ」をクリックして、アプリケーションをデバッグできます。