5. 実習 (アプリケーション開発) - fujitsu...61 5. 実習 (アプリケーション開発)...

83
61 61 5. 実習 (アプリケーション開発) 5. 実習 (アプリケーション開発) それでは、実際にCORBAアプリケーションを作成してみましょう。 作成方法については、以下の2つに分けて説明します。 サーバアプリケーションの開発 (COBOL編) クライアントアプリケーションの開発(Java編)

Upload: others

Post on 12-Jul-2020

7 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: 5. 実習 (アプリケーション開発) - Fujitsu...61 5. 実習 (アプリケーション開発) それでは、実際にCORBAアプリケーションを作成してみましょう。作成方法については、以下の2つに分けて説明します。•サーバアプリケーションの開発(COBOL編)

6161

5. 実習(アプリケーション開発)5. 実習(アプリケーション開発)

それでは、実際にCORBAアプリケーションを作成してみましょう。

作成方法については、以下の2つに分けて説明します。

• サーバアプリケーションの開発 (COBOL編)

• クライアントアプリケーションの開発(Java編)

Page 2: 5. 実習 (アプリケーション開発) - Fujitsu...61 5. 実習 (アプリケーション開発) それでは、実際にCORBAアプリケーションを作成してみましょう。作成方法については、以下の2つに分けて説明します。•サーバアプリケーションの開発(COBOL編)

6262

5.1 サーバアプリケーションの開発(COBOL編)

5.1 サーバアプリケーションの開発(COBOL編)

Page 3: 5. 実習 (アプリケーション開発) - Fujitsu...61 5. 実習 (アプリケーション開発) それでは、実際にCORBAアプリケーションを作成してみましょう。作成方法については、以下の2つに分けて説明します。•サーバアプリケーションの開発(COBOL編)

6363

Step1. クライアント・サーバアプリケーションの設計

Step2. サーバアプリケーションの作成

Step3. サーバアプリケーションのビルド

Step4. ワークユニットの登録

ここ

●実習の流れ●実習の流れ

本章では、Webアプリケーションを作成します。

作成するアプリケーションは簡単な住所録です。

まず、作成する住所録アプリケーションについて説明します。

その後、実際にInterstage Studioを使用してアプリケーションを作成します。

Page 4: 5. 実習 (アプリケーション開発) - Fujitsu...61 5. 実習 (アプリケーション開発) それでは、実際にCORBAアプリケーションを作成してみましょう。作成方法については、以下の2つに分けて説明します。•サーバアプリケーションの開発(COBOL編)

6464

画面遷移画面遷移

住所録     2004.xx.xx

住所録     2004.xx.xx

従業員番号:000000名前 xxxxxx電話番号 xxx-xxx-xxxx住所 XXXXXXXXXXXX

住所録     2004.xx.xx

従業員番号:000000名前 xxxxxx電話番号 

住所 

参照更新

戻る

反映/取消

初期画面

更新画面 参照画面

000000 参照 更新

XXX-XXX-XXXX

XXXXXXXXXXX

反映 取消 戻る

一覧

  アプリ開始-13:31:00 要求回数 1  セション開始-14:02:00 要求回数 1

  アプリ開始-13:31:00 要求回数 1  セション開始-14:02:00 要求回数 1

  アプリ開始-13:31:00 要求回数 1  セション開始-14:02:00 要求回数 1

戻る

一覧

一覧画面

住所録 2004.xx.xx

戻る

アプリ開始-13:31:00 要求回数 1セション開始-14:02:00 要求回数 1

上記の図は、住所録アプリケーションの画面遷移図です。

図に示したように“初期画面”、“参照画面”、“更新画面”および“一覧画面”という4つの画面で構成されています。

これら4画面の詳細について説明します。

Page 5: 5. 実習 (アプリケーション開発) - Fujitsu...61 5. 実習 (アプリケーション開発) それでは、実際にCORBAアプリケーションを作成してみましょう。作成方法については、以下の2つに分けて説明します。•サーバアプリケーションの開発(COBOL編)

6565

住 所 録                           2 0 0 4 . x x . x x

従 業 員 番 号 を 入 力 し て くだ さ い

 

更 新参 照2 0 0 4 0 1

タ イ ト ル を 表 示 日 付 を 表 示

メ ッ セ ー ジ を 表 示

従 業 員 番 号 を 入 力 し た 後 、参 照 ボ タ ン の ク リ ッ ク で 参 照 画 面 へ 、

更 新 ボ タ ン の ク リ ッ ク で 更 新 画 面 へ 遷 移 。

一 覧一 覧 ボ タ ン の ク リ ック で 、 一 覧 画 面 に遷 移 し 、 住 所 録 内の す べ て の デ ー タを 一 覧 表 示 す る 。

ア フ ゚リ 、 セ シ ョン の各 開 始 時 間 ・要求 回 数 を 表 示

初期画面初期画面

従業員番号を入力し、[参照]ボタンで参照画面に遷移する。[更新]ボタンをクリックした場合は、更新画面に遷移する。[一覧]ボタンをクリックした場合は、一覧画面に遷移する。

参照画面(参照)

更新画面(更新)

一覧画面(一覧)

タイトル

日付

アプリ開始時間

要求回数(アプリ)

セション開始時間

要求回数(セション)

メッセージ

従業員番号

機能概要画面遷移(ボタン名)入出力項目

アプリ開始-13:31:00 要求回数 1

セション開始-14:02:00 要求回数 1

上記の図は、住所録アプリケーションの初期画面です。

画面の上部にタイトル、日付、アプリ開始時間・要求回数、セション開始時間・要求回数、さらに従業員番号の入力を促すメッセージを表示します。

その下には、従業員番号を入力するテキストフィールドと参照、更新、一覧処理を選択するボタンがあります。

Page 6: 5. 実習 (アプリケーション開発) - Fujitsu...61 5. 実習 (アプリケーション開発) それでは、実際にCORBAアプリケーションを作成してみましょう。作成方法については、以下の2つに分けて説明します。•サーバアプリケーションの開発(COBOL編)

6666

住 所 録                   2 0 0 4 . x x . x x  

従 業 員 番 号   2 0 0 4 0 1

名 前  佐 藤  一 郎 

電 話 番 号   0 5 6 9 - 0 0 0 - 1 1 1 1 

住 所  尾 張 県 愛 知 市 舟 船 町 5 9 6 3

戻 る

日 付 を表 示タ イ トル を 表 示

住 所 録 を 表 示

戻 るボ タン の ク リ ック で 初 期 画面 へ 遷移 す る 。

ア フ ゚リ 、 セ シ ョン の 各開 始 時 間 ・要 求 回 数 を 表示

参照画面参照画面

[戻る]ボタンのクリックで初期画面へ遷移する。初期画面(戻る)タイトル

日付

アプリ開始時間

要求回数(アプリ)

セション開始時間

要求回数(セション)

従業員番号

名前

電話番号

住所

機能概要画面遷移(ボタン名)入出力項目

アプリ開始-13:31:00 要求回数 1

セション開始-14:02:00 要求回数 1

上記の図は、住所録アプリケーションの参照画面です。

画面の上部にタイトルと日付、アプリ開始時間・要求回数、セション開始時間・要求回数が表示されます。

その下には、入力された従業員番号、対応する名前、電話番号および住所が表示されます。

一番下の[戻る]ボタンをクリックすると初期画面へ遷移します。

Page 7: 5. 実習 (アプリケーション開発) - Fujitsu...61 5. 実習 (アプリケーション開発) それでは、実際にCORBAアプリケーションを作成してみましょう。作成方法については、以下の2つに分けて説明します。•サーバアプリケーションの開発(COBOL編)

6767

住 所 録                     2 0 0 4 . x x . x x

情 報 を 更 新 し て く だ さ い

従 業 員 番 号   2 0 0 4 0 1

名 前   佐 藤   一 郎

電 話 番 号

住 所

0 5 6 9 - 0 0 0 - 1 1 1 1

尾 張 県 愛 知 市 舟 船 町 5 9 6 3

取 消反 映

タ イ ト ル を 表 示 日 付 を 表 示

反 映 → 情 報 を 反 映      初 期 画 面 へ 遷 移取 消 → 情 報 反 映 せ ず      初 期 画 面 へ 遷 移

電 話 番 号 と 住 所の み 修 正 が 可 能

メ ッ セ ー ジ を 表 示

ア フ ゚ リ 、 セ シ ョ ン の 各開 始 時 間 ・要 求 回 数 を 表 示

更新画面更新画面

電話番号と住所を入力して、[反映]ボタンをクリックすると、情報を反映して初期画面に遷移する。[取消]ボタンをクリックした場合は、情報反映せずに初期画面へ遷移する。

初期画面(反映)初期画面(取消)

タイトル

日付

アプリ開始時間

要求回数(アプリ)

セション開始時間

要求回数(セション)

メッセージ

従業員番号

名前

電話番号

住所

機能概要画面遷移(ボタン名)入出力項目

アプリ開始-13:31:00 要求回数 1

セション開始-14:02:00 要求回数 1

上記の図は、住所録アプリケーションの更新画面です。

画面の上部にタイトルと日付、アプリ開始時間・要求回数、セション開始時間・要求回数が表示されます。

その下には、入力された従業員番号、対応する名前、電話番号および住所が表示されます。

一番下の[反映]、または[取消し]ボタンをクリックすると初期画面へ遷移します。

Page 8: 5. 実習 (アプリケーション開発) - Fujitsu...61 5. 実習 (アプリケーション開発) それでは、実際にCORBAアプリケーションを作成してみましょう。作成方法については、以下の2つに分けて説明します。•サーバアプリケーションの開発(COBOL編)

6868

住所録           20 04 .xx.xx

一覧表 (10件 )  住所電話番号名前従業員番号

  .

  .

  .

200103

200102

200101

  .

  .

  .

  .

  .

  .

  .

  .

  .

和泉県泉市浜川550722-000 -3333田中信三郎

三河県三河市海池27270242-000 -2222鈴木次男

尾張県愛知市舟船町59630569-000 -1111佐藤一郎

戻る戻るボタンをクリックで、初期画面に遷移する。

タイトルを表示 日付を表示メッセージを表示

アプリ、セションの各開始時間 ・要求回数を表示

登録されている従業員の一覧を表示

一覧画面一覧画面

住所録データの一覧を表形式で表示する。初期画面(戻る)タイトル日付アプリ開始時間要求回数(アプリ)セション開始時間要求回数(セション)メッセージ一覧表(画面部品)従業員番号、名前、電話番号、住所

機能概要画面遷移(ボタン名)入出力項目

アプリ開始-13:31:00 要求回数 1

セション開始-14:02:00 要求回数 1

上記の図は、住所録アプリケーションの一覧画面です。

画面の上部にタイトルと日付、アプリ開始時間・要求回数、セション開始時間・要求回数が表示されます。

その下には、登録されている従業員の一覧が表示されます。

一番下の[戻る]ボタンをクリックすると初期画面へ遷移します。

Page 9: 5. 実習 (アプリケーション開発) - Fujitsu...61 5. 実習 (アプリケーション開発) それでは、実際にCORBAアプリケーションを作成してみましょう。作成方法については、以下の2つに分けて説明します。•サーバアプリケーションの開発(COBOL編)

6969

AddressBookHandler Address

HeadBeanBodyBean

BodyTableBean

データ設定

データ参照

CORBA

サーバ

初期画面

参照画面

更新画面

一覧画面

住所録システムの構成住所録システムの構成

ユーザは、Webクライアントから、住所録の参照や更新の操作を行います。

Webサーバでは、ユーザのリクエストをAddressBookHandlerが解釈します。

AddressBookHandlerは、表示データをJavaBean(HeadBean、BodyBean、BodyTableBean)を用いて獲得します。RecordManagerはCORBA経由でアプリケーションサーバとやりとりをし、データBeanの値を設定します。

今回の実習では、CORBAコーディングに関係する、斜線で示したクライアントのjavaBean 、AddressBookHandlerと、サーバ側であるAddressの3つのクラスを中心に、CORBAサービスを用いたWebアプリ、サーバアプリの開発方法について説明します。

Page 10: 5. 実習 (アプリケーション開発) - Fujitsu...61 5. 実習 (アプリケーション開発) それでは、実際にCORBAアプリケーションを作成してみましょう。作成方法については、以下の2つに分けて説明します。•サーバアプリケーションの開発(COBOL編)

7070

Step1. クライアント・サーバアプリケーションの設計

Step2. サーバアプリケーションの作成

Step3. サーバアプリケーションのビルド

Step4. ワークユニットの登録

ここ

●実習の流れ●実習の流れ

本章では、Webアプリケーションを作成します。

作成するアプリケーションは簡単な住所録です。

まず、作成する住所録アプリケーションについて説明します。

その後、実際にInterstage Studioを使用してアプリケーションを作成します。

Page 11: 5. 実習 (アプリケーション開発) - Fujitsu...61 5. 実習 (アプリケーション開発) それでは、実際にCORBAアプリケーションを作成してみましょう。作成方法については、以下の2つに分けて説明します。•サーバアプリケーションの開発(COBOL編)

7171

起動タイプ : persistent

多重度 : 1

インターフェース : 静的スケルトン

サーバアプリケーションの構成サーバアプリケーションの構成

•起動タイプはCORBAアプリケーションをワークユニット上で動作させるので、"persistent"にします。

•プロセス多重度は住所録データをCORBAアプリケーションのメモリ上に持つため、プロセス多重度は1にします。

•インタフェースは、IDLコンパイラにより生成したスケルトンソースを使用した静的スケルトンインタフェースを使用します。

Page 12: 5. 実習 (アプリケーション開発) - Fujitsu...61 5. 実習 (アプリケーション開発) それでは、実際にCORBAアプリケーションを作成してみましょう。作成方法については、以下の2つに分けて説明します。•サーバアプリケーションの開発(COBOL編)

7272

②[起動]をクリック

Interstage Studioの起動Interstage Studioの起動

①[Interstage Studio]アイコンをクリック

■Interstage Studioを起動して、CORBAサーバアプリケーションのCOBOLプロジェクトを新規作成します。

Interstage Studioの起動方法①デスクトップにある[Interstage Studio]アイコンをクリックします。または、メニューの[すべてのプログラム]-[Interstage]-[Studio] -[Interstage Studio]を選択します。② Interstage Studio起動画面の[起動]ボタンをクリックします。

Page 13: 5. 実習 (アプリケーション開発) - Fujitsu...61 5. 実習 (アプリケーション開発) それでは、実際にCORBAアプリケーションを作成してみましょう。作成方法については、以下の2つに分けて説明します。•サーバアプリケーションの開発(COBOL編)

7373

②“COBOL”を展開し、“CORBAサーバプロジェクト” を選択し、[次へ]をクリック

プロジェクトの作成 (1)プロジェクトの作成 (1)

①[ファイル]-[新規]-[プロジェクト]を選択

Interstage Studioで作成されるファイルの一覧を以下に表示します。一覧には、ウィザードで生成されるファイルとビルド時に生成されるターゲットファイルのみ記述しており、IDLファイルから生成されるスタブ、スケルトンファイルは含みません。

ADBKSV.exeUSADBKSV.dll

ターゲット

USADBKSV.idlIDLファイル

USINITADBKSV.cobサーバアプリケーション登録ソース(COBOL)

USADBKSV.cobビジネスメソッドソース(COBOL)

ADBKSV.cobメインソース(COBOL)

ファイル名説明

Page 14: 5. 実習 (アプリケーション開発) - Fujitsu...61 5. 実習 (アプリケーション開発) それでは、実際にCORBAアプリケーションを作成してみましょう。作成方法については、以下の2つに分けて説明します。•サーバアプリケーションの開発(COBOL編)

7474

③[プロジェクト名]に「ADBKSV」を指定し、[次へ]をクリック ④そのまま[次へ]をクリック

プロジェクトの作成 (2)プロジェクトの作成 (2)

Page 15: 5. 実習 (アプリケーション開発) - Fujitsu...61 5. 実習 (アプリケーション開発) それでは、実際にCORBAアプリケーションを作成してみましょう。作成方法については、以下の2つに分けて説明します。•サーバアプリケーションの開発(COBOL編)

7575

⑤そのまま[次へ]をクリック ⑥そのまま[終了]をクリック

プロジェクトの作成 (3)プロジェクトの作成 (3)

◆Unicodeを使用する

COBOLアプリケーションのコード系をUnicodeにする場合は、チェックしてください。

今回はコード系をShift_JISにするので、チェックしないで「次へ」をクリックしてください。

※以下のダイアログボックスが表示された場合、「はい」をクリックしてください。

Page 16: 5. 実習 (アプリケーション開発) - Fujitsu...61 5. 実習 (アプリケーション開発) それでは、実際にCORBAアプリケーションを作成してみましょう。作成方法については、以下の2つに分けて説明します。•サーバアプリケーションの開発(COBOL編)

7676

①[モジュール名]に「RECMOD」を入力、[例外の生成]のチェックを外し、[次へ]をクリック ②そのまま[次へ]をクリック

IDLの自動作成 (1)IDLの自動作成 (1)

プロジェクトの作成に続いて、IDLの自動作成処理が起動します。

上記手順に沿って、IDLを作成してください。

Page 17: 5. 実習 (アプリケーション開発) - Fujitsu...61 5. 実習 (アプリケーション開発) それでは、実際にCORBAアプリケーションを作成してみましょう。作成方法については、以下の2つに分けて説明します。•サーバアプリケーションの開発(COBOL編)

7777

③[追加]ボタンをクリックし、[型の定義]に下表の項目を入力

⑤[追加]ボタンをクリック

IDLの自動作成 (2)IDLの自動作成 (2)

④[次へ]をクリック

◆型の定義

以下の項目を入力してください。

10(空欄)(空欄)DLISTEMPLOYEE

繰返し数小数桁全体桁変数名型

Page 18: 5. 実習 (アプリケーション開発) - Fujitsu...61 5. 実習 (アプリケーション開発) それでは、実際にCORBAアプリケーションを作成してみましょう。作成方法については、以下の2つに分けて説明します。•サーバアプリケーションの開発(COBOL編)

7878

⑦[OK]ボタンをクリック

IDLの自動作成 (3)IDLの自動作成 (3)

⑥[構造体名]に「EMPLOYEE」を入力、[追加]ボタンをクリックし、[構成リスト]に下表の項目を入力

◆構成リスト

以下の項目を入力してください。

(空欄)-20日本語文字列ADDR

(空欄)-20英数文字列PHONE

(空欄)-10日本語文字列NAME

(空欄)-10英数文字列IDNUM

繰返し数小数桁全体桁型変数名

Page 19: 5. 実習 (アプリケーション開発) - Fujitsu...61 5. 実習 (アプリケーション開発) それでは、実際にCORBAアプリケーションを作成してみましょう。作成方法については、以下の2つに分けて説明します。•サーバアプリケーションの開発(COBOL編)

7979

⑧[構造体の定義]に「EMPLOYEE」が登録されていることを確認して、[次へ]をクリック

⑨[追加]をクリック

IDLの自動作成 (4)IDLの自動作成 (4)

Page 20: 5. 実習 (アプリケーション開発) - Fujitsu...61 5. 実習 (アプリケーション開発) それでは、実際にCORBAアプリケーションを作成してみましょう。作成方法については、以下の2つに分けて説明します。•サーバアプリケーションの開発(COBOL編)

8080

⑪ [追加]ボタンをクリック、[パラメタリスト]に下表の項目を入力し、[OK]ボタンをクリック

⑫ [利用者メソッドの定義]に「FINDEMP」が追加されていることを確認

⑬同様に、[利用者メソッドの定義]に「UPDEMP」、「GETALL」の登録を行う(下表の項目を入力)

IDLの自動作成 (5)IDLの自動作成 (5)

⑩ [メソッド名]に「FINDEMP」[戻り値の型]に「4バイト整数」を入力

◆利用者メソッドの定義

【 FINDEMP】

【 UPDEMP 】

【 GETALL 】

inout

パラメタタイプ

(空欄)

小数桁

param1

変数名

(空欄)

全体桁

EMPLOYEE

4バイト整数

FINDEMP

パラメタリスト

戻り値の型

メソッド名

in

パラメタタイプ

(空欄)

小数桁

param1

変数名

(空欄)

全体桁

EMPLOYEE

4バイト整数

UPDEMP

パラメタリスト

戻り値の型

メソッド名

out

パラメタタイプ

(空欄)

小数桁

param1

変数名

(空欄)

全体桁

DLIST

4バイト整数

GETALL

パラメタリスト

戻り値の型

メソッド名

Page 21: 5. 実習 (アプリケーション開発) - Fujitsu...61 5. 実習 (アプリケーション開発) それでは、実際にCORBAアプリケーションを作成してみましょう。作成方法については、以下の2つに分けて説明します。•サーバアプリケーションの開発(COBOL編)

8181

⑭ [終了]をクリック⑮IDLコンパイルエラーが発生、[OK]をクリック

IDLの自動作成 (6)IDLの自動作成 (6)

このサンプルの場合、IDLコンパイルエラーが発生しますが、[OK]をクリックし処理を続けます。

※Interstageが停止状態の場合は、IDLの自動作成処理の際に自動的に起動されます。

Page 22: 5. 実習 (アプリケーション開発) - Fujitsu...61 5. 実習 (アプリケーション開発) それでは、実際にCORBAアプリケーションを作成してみましょう。作成方法については、以下の2つに分けて説明します。•サーバアプリケーションの開発(COBOL編)

8282

②IDLを修正

「COBOL」パースペクティブ

IDLの編集IDLの編集

③修正後、保存

①「その他のファイル」から“USADBKSV.idl”をクリックして開く

◆IDLの編集

COBOLのIDLウィザードで構造体シーケンスを作成した場合、構造体定義と型宣言の順番が逆になるため、手動で修正を行う必要があります。

以下を参照して“USADBKSV.idl”を修正してください。

※IDLコンパイルエラーが発生しない場合、IDLファイルやCOBOLファイルはプロジェクトのソースファイルフォルダ配下に配置されます。

【修正前】

// モジュール宣言

module RECMOD {

// 定数宣言

// 型宣言

typedef sequence<EMPLOYEE,10> DLIST;

// 構造体宣言

struct EMPLOYEE {

string<10> IDNUM;

wstring<10> NAME;

string<20> PHONE;

wstring<20> ADDR;

};

// ユーザインターフェース宣言

interface ADBKSV {

long FINDEMP(inout EMPLOYEE param1);

long UPDEMP(in EMPLOYEE param1);

long GETALL(out DLIST param1);

};

【修正後】

// モジュール宣言

module RECMOD {

// 定数宣言

// 構造体宣言

struct EMPLOYEE {

string<10> IDNUM;

wstring<10> NAME;

string<20> PHONE;

wstring<20> ADDR;

};

// 型宣言

typedef sequence<EMPLOYEE,10> DLIST;

// ユーザインターフェース宣言

interface ADBKSV {

long FINDEMP(inout EMPLOYEE param1);

long UPDEMP(in EMPLOYEE param1);

long GETALL(out DLIST param1);

};

Page 23: 5. 実習 (アプリケーション開発) - Fujitsu...61 5. 実習 (アプリケーション開発) それでは、実際にCORBAアプリケーションを作成してみましょう。作成方法については、以下の2つに分けて説明します。•サーバアプリケーションの開発(COBOL編)

8383

②ビジネスメソッドソースを、以下の指示通りに修正

ビジネスメソッドソースの編集ビジネスメソッドソースの編集

③修正後、保存

①「その他のファイル」から“USADBKSV.cob”をクリックして開く

CORBAサーバアプリケーションをApdesignerによって自動作成した場合に作成されるソースは、オブジェクト指向COBOL(OOCOBOL)となります。

◆ビジネスメソッドソースの編集

次のファイルを参照し、USADBKSV.cob を修正してください。

C:¥MyApplication¥COBOL¥Source¥server

注意:

COBOLエディタでCOBOLソースプログラムを作成、または変更する際、正書法で指定された規則に従います。

従わない場合、以下のようなエラーが問題ビューに表示されます。

【参考:正書法】

COBOLエディタでサポートする正書法には以下の2つの形式があります。

・固定長形式

・可変長形式

Page 24: 5. 実習 (アプリケーション開発) - Fujitsu...61 5. 実習 (アプリケーション開発) それでは、実際にCORBAアプリケーションを作成してみましょう。作成方法については、以下の2つに分けて説明します。•サーバアプリケーションの開発(COBOL編)

8484

Step1. クライアント・サーバアプリケーションの設計

Step2. サーバアプリケーションの作成

Step3. サーバアプリケーションのビルド

Step4. ワークユニットの登録

ここ

●実習の流れ●実習の流れ

本章では、Webアプリケーションを作成します。

作成するアプリケーションは簡単な住所録です。

まず、作成する住所録アプリケーションについて説明します。

その後、実際にInterstage Studioを使用してアプリケーションを作成します。

Page 25: 5. 実習 (アプリケーション開発) - Fujitsu...61 5. 実習 (アプリケーション開発) それでは、実際にCORBAアプリケーションを作成してみましょう。作成方法については、以下の2つに分けて説明します。•サーバアプリケーションの開発(COBOL編)

8585

①“USADBKSV.idl”を右クリックし、メニューから“ソースファイルへの追加”を実行

サーバーアプリケーションのビルド(1)サーバーアプリケーションのビルド(1)

②自動的にIDLの翻訳が実行され、「その他のファイル」にスケルトンファイルが生成される

注意事項

※メニューの「プロジェクト」-「自動的にビルド」がチェックされていない場合、IDLファイルをソースフォルダへ追加してもIDLの翻訳は実行されません。

【対処】

IDLファイルをソースフォルダに追加した後、IDLファイルを右クリックし、メニューから「ファイルの翻訳」を実行してください。

※Interstage Application Serverが起動していない場合にCORBAサーバプロジェクトのビルドを行うと、ビルドに失敗する場合があります。

具体的には、ログコンソールビューに以下のエラーが表示されています。

OD: エラー: od51401:IDLparser:CORBA_Container_lookup関数で例外情報にIDL:CORBA/StExcep/COMM_FAILURE:1.0が発生しました。マイナーコードは0x464a010aです。

OD: エラー: od51221:IDLc:IDLparserコマンドエラー. エラーコード=4

【対処】

IDLファイルを更新している場合、Interstage Application Serverが強制停止状態の時にはIDLコンパイラの実行がエラーとなるため、ビルドに失敗します。このような場合には、Interstage管理コンソールを用いてInterstage Application Serverを起動してから、再度ビルドを実行してください。

Interstage管理コンソールを用いてのInterstage Application Serverの起動は、P92の「管理コンソールの起動」を参照してください。

Page 26: 5. 実習 (アプリケーション開発) - Fujitsu...61 5. 実習 (アプリケーション開発) それでは、実際にCORBAアプリケーションを作成してみましょう。作成方法については、以下の2つに分けて説明します。•サーバアプリケーションの開発(COBOL編)

8686

③「その他のファイル」を展開し、スケルトンファイルを右クリック、「ソースファイルへ追加」を選択

この操作を行うCOBOLファイル、スケルトンファイル一覧は下記の表を参照

サーバーアプリケーションのビルド(2)サーバーアプリケーションのビルド(2)

④“ADBKSV.cob” を右クリックし、「主プログラム」を選択

※メニューの「プロジェクト」-「自動的にビルド」がチェックされている場合、上記の操作で自動的にビルドが実行されます。

※スタブファイルは「ソースファイルへ追加」の操作を行わないようにしてください。

◆COBOLファイル、スケルトンファイル一覧

ADBKSV.cobメインソースCOBOLファイル

USADBKSV.cobビジネスメソッドソース

USINITADBKSV.cobサーバアプリケーション登録ソース

データ型Helperファイル(データ型名--helper.cob)

データ型クラスファイル

(データ型名.cob)

インプリメンテーション登録ファイル(モジュール名-インタフェース名--NEW.cob)

tieクラスファイル(モジュール名-インタフェース名--tie.cob)

Narrowスケルトンファイル(モジュール名-インタフェース名--Narrow.cob)

Helperクラスファイル(モジュール名-インタフェース名--helper.cob)

インタフェースファイル(モジュール名-インタフェース名.cob)

SEQUENCE-RECMOD-EMPLOYEE-10--HELPER.cob

スケルトンファイル

RECMOD-EMPLOYEE--HELPER.cob

RECMOD-DLIST--HELPER.cob

CORBA-WSTRING-20--HELPER.cob

CORBA-STRING-10--HELPER.cob

SEQUENCE-RECMOD-EMPLOYEE-10.cob

CORBA-STRING-20--HELPER.cob

RECMOD-ADBKSV--NEW.cob

CORBA-WSTRING-10--HELPER.cob

RECMOD-ADBKSV--TIE.cob

RECMOD-ADBKSV--Narrow.cob

RECMOD-ADBKSV--HELPER.cob

RECMOD-ADBKSV.cob

Page 27: 5. 実習 (アプリケーション開発) - Fujitsu...61 5. 実習 (アプリケーション開発) それでは、実際にCORBAアプリケーションを作成してみましょう。作成方法については、以下の2つに分けて説明します。•サーバアプリケーションの開発(COBOL編)

8787

サーバーアプリケーションのビルド(3)サーバーアプリケーションのビルド(3)

⑥「ADBKSV」プロジェクトを右クリックし、「プロジェクトのビルド」を実行

⑤「ADBKSV」プロジェクトを右クリックし、「依存関係の解析」-「すべて」を選択

※メニューの「プロジェクト」-「自動的にビルド」がチェックされていない場合、上記の操作でビルドを実行します。

◆スケルトンファイルの自動追加

通常ウィザードが生成したIDLファイルに対しては、スケルトンファイルの追加が自動的に行われます。

しかし、ウィザードが生成していないIDLファイルに対しては、スケルトンファイルの追加は自動的には行われません。

ユーザが手動で追加する必要があります。

たとえば、プロジェクト生成後にモジュール名を変更した場合、型を追加した場合、プロジェクト生成後に既存のIDLファイルを持ってきてプロジェクトにコピーして使った場合などがこのケースにあたります。

この実習のADBKSVのように、構造体の繰返しを型として定義している場合もこのケースにあたります(ウィザードでは構造体の繰返しは型として定義できないためです)。

◆依存関係の解析

プロジェクトのビルド時に翻訳順番を正しくさせるために解析を実行します。

Page 28: 5. 実習 (アプリケーション開発) - Fujitsu...61 5. 実習 (アプリケーション開発) それでは、実際にCORBAアプリケーションを作成してみましょう。作成方法については、以下の2つに分けて説明します。•サーバアプリケーションの開発(COBOL編)

8888

「問題」ビューに何も表示されていないことを確認し、ビルド完了

サーバーアプリケーションのビルド(4)サーバーアプリケーションのビルド(4)

Page 29: 5. 実習 (アプリケーション開発) - Fujitsu...61 5. 実習 (アプリケーション開発) それでは、実際にCORBAアプリケーションを作成してみましょう。作成方法については、以下の2つに分けて説明します。•サーバアプリケーションの開発(COBOL編)

8989

Step1. クライアント・サーバアプリケーションの設計

Step2. サーバアプリケーションの作成

Step3. サーバアプリケーションのビルド

Step4. ワークユニットの登録ここ

●実習の流れ●実習の流れ

本章では、Webアプリケーションを作成します。

作成するアプリケーションは簡単な住所録です。

まず、作成する住所録アプリケーションについて説明します。

その後、実際にInterstage Studioを使用してアプリケーションを作成します。

Page 30: 5. 実習 (アプリケーション開発) - Fujitsu...61 5. 実習 (アプリケーション開発) それでは、実際にCORBAアプリケーションを作成してみましょう。作成方法については、以下の2つに分けて説明します。•サーバアプリケーションの開発(COBOL編)

9090

アプリケーション格納フォルダ プロジェクトフォルダ

アプリケーション実行ファイル・ライブラリファイルの格納アプリケーション実行ファイル・ライブラリファイルの格納

①エクスプローラを開く

③プロジェクトフォルダの実行ファイル、ライブラリファイルを、格納フォルダにコピー

②アプリケーション格納フォルダ・アプリケーションカレント動作ディレクトリを作成

◆実行ファイル・ライブラリファイルをアプリケーション格納フォルダに格納

アプリケーション格納フォルダにプロジェクトフォルダを指定することも可能ですが、配備後不用意にアプリケーションのビルドを行ってしまった場合、すでに配備されている実行ファイル・ライブラリファイルが更新されてしまいます。

これを防ぐために、プロジェクトフォルダとは異なる場所にアプリケーション格納フォルダを作成し、実行ファイル・ライブラリファイルを格納します。

・アプリケーション格納フォルダ・アプリケーションカレント動作ディレクトリを作成

・プロジェクトフォルダの実行ファイル・ライブラリファイルをアプリケーション格納フォルダへコピー

アプリケーション格納フォルダ :C:¥Interstage¥VAR¥CORBA_WU¥ADBKSV-WUアプリケーションカレント動作ディレクトリ:C:¥Interstage¥VAR¥CORBA_WU¥ADBKSV-WU¥work

プロジェクトフォルダ:

C:¥Documents and Settings¥インストールユーザ名¥My Documents¥Interstage Studio¥workspace¥ADBKSV実行ファイル :ADBKSV.exeライブラリファイル :USADBKSV.dll

アプリケーション格納フォルダ:C:¥Interstage¥VAR¥CORBA_WU¥ADBKSV-WU

Page 31: 5. 実習 (アプリケーション開発) - Fujitsu...61 5. 実習 (アプリケーション開発) それでは、実際にCORBAアプリケーションを作成してみましょう。作成方法については、以下の2つに分けて説明します。•サーバアプリケーションの開発(COBOL編)

9191

①[ウィンドウ]-[ビューの表示]-

[その他]を選択

②“IJServer”を展開し、“IJServer”を選択、

[OK]ボタンをクリック

管理コンソールの起動(1)管理コンソールの起動(1)

Page 32: 5. 実習 (アプリケーション開発) - Fujitsu...61 5. 実習 (アプリケーション開発) それでは、実際にCORBAアプリケーションを作成してみましょう。作成方法については、以下の2つに分けて説明します。•サーバアプリケーションの開発(COBOL編)

9292

管理コンソールの起動(2)管理コンソールの起動(2)

③“IJServerビュー”が表示されるので、“localhost”を右クリックし、[Interstage管理コンソール]を選択

④[管理コンソール]が表示される

[ユーザ名]、[パスワード]を入力し、

[ログイン]ボタンをクリック

注意事項

「管理コンソール」の「ユーザ名」「パスワード」は、localhostへアクセスする時の「ユーザ名」「パスワード」を指定してください。

Page 33: 5. 実習 (アプリケーション開発) - Fujitsu...61 5. 実習 (アプリケーション開発) それでは、実際にCORBAアプリケーションを作成してみましょう。作成方法については、以下の2つに分けて説明します。•サーバアプリケーションの開発(COBOL編)

9393

①“システム”をクリックし、[Interstage]の状態を確認「停止」の場合は、[起動]ボタンをクリックし、Interstageを起動

②“ワークユニット”-[新規作成]をクリック

実行環境の作成(1)実行環境の作成(1)

Page 34: 5. 実習 (アプリケーション開発) - Fujitsu...61 5. 実習 (アプリケーション開発) それでは、実際にCORBAアプリケーションを作成してみましょう。作成方法については、以下の2つに分けて説明します。•サーバアプリケーションの開発(COBOL編)

9494

③[ワークユニット名]に「ADBKSV-WU」、[ワークユニットタイプ]に「CORBA」を設定し、[詳細設定]の[表示]ボタンをクリック

実行環境の作成(2)実行環境の作成(2)

Page 35: 5. 実習 (アプリケーション開発) - Fujitsu...61 5. 実習 (アプリケーション開発) それでは、実際にCORBAアプリケーションを作成してみましょう。作成方法については、以下の2つに分けて説明します。•サーバアプリケーションの開発(COBOL編)

9595

実行環境の作成(3)実行環境の作成(3)

④[アプリケーション格納フォルダ]、[アプリケーション動作カレントディレクトリ]を入力し、[作成]ボタンをクリック

◆ ワークユニット設定

以下の項目を入力してください。

C:¥Interstage¥var¥CORBA_WU¥ADBKSV-WU¥workアプリケーション動作カレントディレクトリ

C:¥Interstage¥var¥CORBA_WU¥ADBKSV-WUアプリケーション格納フォルダ

値項目名

Page 36: 5. 実習 (アプリケーション開発) - Fujitsu...61 5. 実習 (アプリケーション開発) それでは、実際にCORBAアプリケーションを作成してみましょう。作成方法については、以下の2つに分けて説明します。•サーバアプリケーションの開発(COBOL編)

9696

ワークユニット作成の正常終了メッセージが表示される

“ワークユニット”を展開し、“ADBKSV-WU”が作成されていることを確認

実行環境の作成(4)実行環境の作成(4)

Page 37: 5. 実習 (アプリケーション開発) - Fujitsu...61 5. 実習 (アプリケーション開発) それでは、実際にCORBAアプリケーションを作成してみましょう。作成方法については、以下の2つに分けて説明します。•サーバアプリケーションの開発(COBOL編)

9797

⑤“ワークユニット”-“ADBKSV-WU”を選択、[配備]をクリック

⑥[インプリメンテーションリポジトリID]に「IDL:RECMOD/ADBKSV:1.0」[実行プログラムファイル]に「ADBKSV.exe」を入力し、[詳細設定]の[表示]をクリック

実行環境の作成(5)実行環境の作成(5)

◆ 配備設定

以下の項目を入力してください。

※インプリメンテーションリポジトリIDに指定する値は、

ADBKSV.cob(メインソース)に指定したREP-IDを指定する必要があります。

ADBKSV.cob(抜粋)

ADBKSV.exe実行プログラムファイル

IDL:RECMOD/ADBKSV:1.0インプリメンテーションリポジトリID

値項目名

WORKING-STORAGE SECTION.

COPY CORBA--COPY.

COPY USADBKSV--COPY.

01 API-NAME PIC X(50).

01 APL-NAME PIC X(64) VALUE "ADBKSV".

01 ORB USAGE OBJECT REFERENCE CORBA-ORB.

01 BOA USAGE OBJECT REFERENCE CORBA-BOA.

01 IMPL-REP USAGE OBJECT REFERENCE FJ-IMPLEMENTATIONREP.

01 IMPL USAGE OBJECT REFERENCE CORBA-IMPLEMENTATIONDEF.

01 REP-ID PIC X(128) VALUE "IDL:RECMOD/ADBKSV:1.0".

01 OBJ USAGE OBJECT REFERENCE CORBA-OBJECT.

01 EXCEPT-ID USAGE OBJECT REFERENCE CORBA-STRING.

01 EXCEPT-ID-VALUE PIC X(50).

LINKAGE SECTION.

Page 38: 5. 実習 (アプリケーション開発) - Fujitsu...61 5. 実習 (アプリケーション開発) それでは、実際にCORBAアプリケーションを作成してみましょう。作成方法については、以下の2つに分けて説明します。•サーバアプリケーションの開発(COBOL編)

9898

⑧[動作モード]に「SYNC_END」を指定

⑦[CORBAアプリケーション]の[表示]をクリックし、[ロケール]に「Shift JIS」を指定

実行環境の作成(6)実行環境の作成(6)

◆ CORBAアプリケーション

以下の項目を入力してください。

・ロケール

CORBAサーバアプリケーションのコード系を指定します。

CORBAサービスでコード変換を行う際に参照される値であるため、Shift_JISを指定します。

それにより、UnicodeのWebアプリケーションとShift_JISのCOBOLアプリケーション間で文字データを連携することができます。

正しく指定しないと文字化けが発生するので注意してください。

・動作モード

COBOLの場合はSYNC_ENDを指定する必要があります。

SYNC_END:

サーバアプリケーションを活性化しても、活性化メソッド(IMPL_IS_READY)は復帰しません。

サーバアプリケーションの停止時に活性化メソッドは復帰します。

COMPATIBLE:

サーバアプリケーション活性化後、活性化メソッド(IMPL_IS_READY)は復帰します。

Shift JISロケール

SYNC_END動作モード

値項目名

Page 39: 5. 実習 (アプリケーション開発) - Fujitsu...61 5. 実習 (アプリケーション開発) それでは、実際にCORBAアプリケーションを作成してみましょう。作成方法については、以下の2つに分けて説明します。•サーバアプリケーションの開発(COBOL編)

9999

⑨[インターフェース定義]の[表示]をクリックし、[追加]ボタンをクリック

実行環境の作成(7)実行環境の作成(7)

⑩[インターフェース定義]に下表の項目を入力し、[一覧へ反映]ボタンをクリック

◆インターフェース定義

以下の項目を入力してください。

※インターフェースリポジトリIDはIDL定義に設定したモジュール名、インタフェース名 に一致させて指定してください。

USADBKSV.dll(抜粋)

RECMOD::ADBKSVネーミングサービス登録名

0優先度

USADBKSV.dllライブラリパス名

使用しないCOBOLの動的スケルトンインターフェース

登録するネーミングサービスへの登録

IDL:RECMOD/ADBKSV:1.0インターフェースリポジトリID

値項目名

// モジュール宣言

module RECMOD {

.......

// ユーザインタフェース宣言

interface ADBKSV {

long FINDEMP(inout EMPLOYEE param1);

long UPDEMP(in EMPLOYEE param1);

long GETALL(out DLIST param1);

};

};

インターフェースリポジトリIDIDL:RECMOD/ADBKSV:1.0

Page 40: 5. 実習 (アプリケーション開発) - Fujitsu...61 5. 実習 (アプリケーション開発) それでは、実際にCORBAアプリケーションを作成してみましょう。作成方法については、以下の2つに分けて説明します。•サーバアプリケーションの開発(COBOL編)

100100

⑪[配備]ボタンをクリック

実行環境の作成(8)実行環境の作成(8)

アプリケーションの配備成功のメッセージが表示される

Page 41: 5. 実習 (アプリケーション開発) - Fujitsu...61 5. 実習 (アプリケーション開発) それでは、実際にCORBAアプリケーションを作成してみましょう。作成方法については、以下の2つに分けて説明します。•サーバアプリケーションの開発(COBOL編)

101101

5.2 クライアントアプリケーションの開発(Java編)

5.2 クライアントアプリケーションの開発(Java編)

Page 42: 5. 実習 (アプリケーション開発) - Fujitsu...61 5. 実習 (アプリケーション開発) それでは、実際にCORBAアプリケーションを作成してみましょう。作成方法については、以下の2つに分けて説明します。•サーバアプリケーションの開発(COBOL編)

102102

Step1. Webアプリケーションの設計

Step2. Webアプリケーションの作成

Step3. Webアプリケーションのビルド

Step4. Webアプリケーションの配備

ここ

●実習の流れ●実習の流れ

Step5. システムの実行例

本章では、Webアプリケーションを作成します。

作成するアプリケーションは簡単な住所録です。

まず、作成する住所録アプリケーションについて説明します。

その後、実際にInterstage Studioを使用してアプリケーションを作成します。

Page 43: 5. 実習 (アプリケーション開発) - Fujitsu...61 5. 実習 (アプリケーション開発) それでは、実際にCORBAアプリケーションを作成してみましょう。作成方法については、以下の2つに分けて説明します。•サーバアプリケーションの開発(COBOL編)

103103

クライアントの実装クライアントの実装

住所録アプリケーションのクライアント構成

CORBAクライアント処理の実装クラス

本実習で作成する部分

サーバアプリケーション

ブラウザ各出力画面用

JSPファイル群

各クラス・JSPから利用するクラス群(JavaBean)

※本実習では、CORBAクライアント処理を実装したクラスのみを作成し、そのほかのJSPなどは作成済みのものを使用します。

◆CORBAクライアント処理の実装クラス概要

RecordManager.java

CORBAクライアントとしての処理(ORB初期化~サーバアプリケーションのオブジェクト取得、サーバアプリケーションのメソッド呼び出しなど)を実装します。

サーバアプリケーションから取得したデータについては、データ保持のためのクラス(EmployeeRecord)へ設定します。

◆RecordManager.java のメソッド

・ initialData :CORBAアプリケーションを呼び出し、サーバアプリケーションから住所録データを取得するメソッド

・ getEmployeeRecord :引数に指定された従業員番号のレコードを返すメソッド

・ isSuccessUpdateRecord :住所録データを更新するメソッド

・ isSuccessReferenceRecord :住所録データを参照するメソッド

・ copyAllRecord :住所録データの複製を取得するメソッド

Page 44: 5. 実習 (アプリケーション開発) - Fujitsu...61 5. 実習 (アプリケーション開発) それでは、実際にCORBAアプリケーションを作成してみましょう。作成方法については、以下の2つに分けて説明します。•サーバアプリケーションの開発(COBOL編)

104104

Step1. Webアプリケーションの設計

Step2. Webアプリケーションの作成

Step3. Webアプリケーションのビルド

Step4. Webアプリケーションの配備

ここ

●実習の流れ●実習の流れ

Step5. システムの実行例

本章では、Webアプリケーションを作成します。

作成するアプリケーションは簡単な住所録です。

まず、作成する住所録アプリケーションについて説明します。

その後、実際にInterstage Studioを使用してアプリケーションを作成します。

Page 45: 5. 実習 (アプリケーション開発) - Fujitsu...61 5. 実習 (アプリケーション開発) それでは、実際にCORBAアプリケーションを作成してみましょう。作成方法については、以下の2つに分けて説明します。•サーバアプリケーションの開発(COBOL編)

105105

プロジェクトの作成(1)プロジェクトの作成(1)

①エクスプローラを開く

②“addressBook”を選択し、右メニューから[コピー]を実行

③“workspace”を選択し、

右メニューから[貼り付け]を実行

この実習では、Webアプリケーションのプロジェクトをあらかじめ準備してあります。(RecordManager.javaなどの一部を除く)。ここでは、このプロジェクトをApcoordinatorにインポートし、CORBAクライアントアプリケーションを作成します。

あらかじめ作成したプロジェクトは次の場所にあります。

このプロジェクトを以下の場所にコピーします。

注意:Apdesignerにて既存プロジェクトをインポートする場合、ワークスペースのサブフォルダにあるプロジェクトしかインポートできません。

C:¥MyApplication¥COBOL¥addressBook

C:¥Documents and Settings¥インストールユーザ名¥My Documents¥Interstage Studio¥workspace¥

Page 46: 5. 実習 (アプリケーション開発) - Fujitsu...61 5. 実習 (アプリケーション開発) それでは、実際にCORBAアプリケーションを作成してみましょう。作成方法については、以下の2つに分けて説明します。•サーバアプリケーションの開発(COBOL編)

106106

プロジェクトの作成(2)プロジェクトの作成(2)

④[パースペクティブを開く]-[その他]を選択

⑤ “Apcoordinator” を選択

⑥[OK]をクリック

◆「Apcoordinator」パースペクティブにして、クライアントアプリケーションのJavaプロジェクトを作成します。作成済みのaddressBookプロジェクトをインポートします。

「Apcoordinator」パースペクティブする手順① Interstage Studioの[ウィンドウ]メニューの[パースペクティブを開く] -[その他]を選択します。②[Apcoordinator]を選択します。

Page 47: 5. 実習 (アプリケーション開発) - Fujitsu...61 5. 実習 (アプリケーション開発) それでは、実際にCORBAアプリケーションを作成してみましょう。作成方法については、以下の2つに分けて説明します。•サーバアプリケーションの開発(COBOL編)

107107

プロジェクトの作成(3)プロジェクトの作成(3)

①[ファイル]-[インポート]を実行

② “一般”- “既存プロジェクトをワークスペースへ” を選択

③[次へ]をクリック

◆作成済みのaddressBookプロジェクトをインポートします。

Page 48: 5. 実習 (アプリケーション開発) - Fujitsu...61 5. 実習 (アプリケーション開発) それでは、実際にCORBAアプリケーションを作成してみましょう。作成方法については、以下の2つに分けて説明します。•サーバアプリケーションの開発(COBOL編)

108108

プロジェクトの作成(4)プロジェクトの作成(4)

④[参照]をクリックすると、[フォルダの参照]画面(右)が表示される

⑤“addressBook”を選択し、[OK]をクリック

フォルダの参照は次の場所を指定します。C:¥Documents and Settings¥インストールユーザ名¥My Documents¥Interstage Studio¥workspace¥addressBook

Page 49: 5. 実習 (アプリケーション開発) - Fujitsu...61 5. 実習 (アプリケーション開発) それでは、実際にCORBAアプリケーションを作成してみましょう。作成方法については、以下の2つに分けて説明します。•サーバアプリケーションの開発(COBOL編)

109109

⑦“addressBook”プロジェクトが登録されていることを確認

「Apcoordinator」パースペクティブ

プロジェクトの作成(5)プロジェクトの作成(5)

⑥[プロジェクト名]、[チェックボックスにチェックが付いている」ことを確認し、[終了]をクリック

Page 50: 5. 実習 (アプリケーション開発) - Fujitsu...61 5. 実習 (アプリケーション開発) それでは、実際にCORBAアプリケーションを作成してみましょう。作成方法については、以下の2つに分けて説明します。•サーバアプリケーションの開発(COBOL編)

110110

ビルドを行うために必要なクラスパスを事前定義ライブラリを用いて、プロジェクトに追加する

ビルドパスの追加(1)ビルドパスの追加(1)

①“addressBook”プロジェクトを

右クリックし、

メニューから[プロパティ]を選択

クラスパスコンテナ一覧(「Interstage Studio V9.0 プログラマーズガイド」より抜粋)

ujief.jarENTエンタープライズアプリケーション拡張機能を使う

ODjava4.jaresnotifyjava4.jarfjmsprovider.jar

JMSJ2EEアプリケーションクライアントからJMSのメッセージを送信する

ujijsf.jarjsf-api.jar

JSFJavaServer Facesを使う

ujiasync.jarASYNCバックエンド連携機能を使う

ujiformc.jarf3hksjsv.jarujicobol.jar

EFORM_CBL電子フォーム連携(COBOL)機能を使う

ujiformc.jarf3hksjsv.jar

EFORM電子フォーム連携機能を使う

ujiejb.jarEJBEJB連携機能を使う

ujidb.jarDBデータベース連携機能を使う

uji.jarBASE基本機能

Apcoordinator

isws-lib.jarWEBSERVCLJ2EEアプリケーションクライアントからWebサービスを呼ぶ

ODjava4.jarfjcontainer94.jarクライアント配布物

EJBCLJ2EEアプリケーションクライアントからEJBアプリケーションを呼ぶ

isj2ee.jarisws.jarjsp-api.jarservlet-api.jar

BASE基本機能

Interstage J2EE

設定されるクラスパスJRE1.4/JRE5.0の場合

選択機能識別子

選択機能ライブラリ種別

Page 51: 5. 実習 (アプリケーション開発) - Fujitsu...61 5. 実習 (アプリケーション開発) それでは、実際にCORBAアプリケーションを作成してみましょう。作成方法については、以下の2つに分けて説明します。•サーバアプリケーションの開発(COBOL編)

111111

ビルドパスの追加(2)ビルドパスの追加(2)

②“Javaのビルドパス”[ライブラリ]タブを選択

③ “Interstage J2EE[BASE]”を選択し、[編集]をクリック

◆事前定義ライブラリ

プロジェクトのビルド、実行に必要なクラスパスを設定することができます。

事前定義ライブラリの利点は、環境が変更されても柔軟に開発環境(IDE)が対応できることです。

たとえば、JDKのバージョンをJDK1.3.1から1.4.1に変更したとき、ObjectDirectorのJARは、ODJava2.jarからODJava4.jarに変更する必要がありますが、クラスパスコンテナ機能が自動的に判断して適切なJARを利用するようになります。つまり、利用者はJDKごとのJARを覚えておく必要がありません。また変更忘れの防止といったメリットもあります。

事前定義ライブラリを利用して、以下のパスを設定します。

ujiasync.jarASYNCバックエンド連携機能を使うApcoordinator

ODjava2.jarEJBCLJ2EEアプリケーションクライアントからEJBアプリケーションを呼び出す

Interstage J2EE

設定したいクラスパス識別子選択機能選択機能ライブラリ種別

Page 52: 5. 実習 (アプリケーション開発) - Fujitsu...61 5. 実習 (アプリケーション開発) それでは、実際にCORBAアプリケーションを作成してみましょう。作成方法については、以下の2つに分けて説明します。•サーバアプリケーションの開発(COBOL編)

112112

⑤ 「Interstage J2EE[BASE、EJBCL]」に変更されていることを確認

④ [J2EEアプリケーションクライアントからEJBアプリケーションを呼び出す]をチェックし、[終了] をクリック

ビルドパスの追加(3)ビルドパスの追加(3)

Page 53: 5. 実習 (アプリケーション開発) - Fujitsu...61 5. 実習 (アプリケーション開発) それでは、実際にCORBAアプリケーションを作成してみましょう。作成方法については、以下の2つに分けて説明します。•サーバアプリケーションの開発(COBOL編)

113113

⑥ “ Apcoordinator[BASE、DB] ”を選択し、[編集]をクリック

ビルドパスの追加(4)ビルドパスの追加(4)

Page 54: 5. 実習 (アプリケーション開発) - Fujitsu...61 5. 実習 (アプリケーション開発) それでは、実際にCORBAアプリケーションを作成してみましょう。作成方法については、以下の2つに分けて説明します。•サーバアプリケーションの開発(COBOL編)

114114

ビルドパスの追加(5)ビルドパスの追加(5)

⑦[バックエンド連携機能を使うをチェックし、[終了]をクリック

⑧“Apcoordinator[BASE、DB、ASYNC]”に変更されていることを確認し、[OK]をクリック

Page 55: 5. 実習 (アプリケーション開発) - Fujitsu...61 5. 実習 (アプリケーション開発) それでは、実際にCORBAアプリケーションを作成してみましょう。作成方法については、以下の2つに分けて説明します。•サーバアプリケーションの開発(COBOL編)

115115

② コマンドプロンプトを起動する。

CDコマンドにて、スタブを格納したいディレクトリに移動し、IDLコマンドにて、IDL手動コンパイルを行う。

③ スタブフォルダ“RECMOD”が作成されていることを確認

スタブパッケージフォルダの追加(1)スタブパッケージフォルダの追加(1)

①USADBKSV.idlをコピーする。

CORBAサーバアプリケーション作成時に生成したIDLファイルをCORBAクライアントアプリケーション作成時でも使用する。

◆USADBKSV.idlをコピー

コピー元:C:¥Documents and Settings¥インストールユーザ名¥My Documents¥Interstage Studio¥workspace¥ADBKSV¥

コピー先:C:¥Documents and Settings¥インストールユーザ名¥My Documents¥Interstage Studio¥workspace¥addressBook¥src

IDLの手動コンパイル

クライアントアプリケーションへ組み込むためのスタブフォルダを、IDL手動コンパイルにて作成します。

・ディレクトリの移動

CDコマンドにて、スタブ格納を格納したいディレクトリに、カレントディレクトリを移動します。

・IDL手動コンパイル

注意:Interstageが起動していない状態で、IDLcコマンドを実行するとエラーが発生します。

Interstage起動後に実行してください。

【参考】

[IDLc コマンド書式] 注意: コマンドオプションは主要なもののみ掲載

IDLc 言語オプション [-m言語オプション] ‒a|-R ‒create|-update|delete IDL_FILE_NAME

cd C:¥Documents and Settings¥インストールユーザ名¥My Documents¥Interstage Studio¥workspace¥addressBook¥src

IDLc -java USADBKSV.idl

Page 56: 5. 実習 (アプリケーション開発) - Fujitsu...61 5. 実習 (アプリケーション開発) それでは、実際にCORBAアプリケーションを作成してみましょう。作成方法については、以下の2つに分けて説明します。•サーバアプリケーションの開発(COBOL編)

116116

スタブパッケージフォルダの追加(2)スタブパッケージフォルダの追加(2)

③“src”フォルダを右クリックし、[更新]を選択

“RECMOD”フォルダが表示される

Page 57: 5. 実習 (アプリケーション開発) - Fujitsu...61 5. 実習 (アプリケーション開発) それでは、実際にCORBAアプリケーションを作成してみましょう。作成方法については、以下の2つに分けて説明します。•サーバアプリケーションの開発(COBOL編)

117117

asyncマップの作成(1)asyncマップの作成(1)

①“addressBook”を選択し、右ボタンメニューから[新規]-[その他]を選ぶ

②”Apcoordinator”- “asyncマップ”を選択[次へ]をクリック

バックエンド連携機能を利用する場合、asyncマップを作成する必要があります。

Page 58: 5. 実習 (アプリケーション開発) - Fujitsu...61 5. 実習 (アプリケーション開発) それでは、実際にCORBAアプリケーションを作成してみましょう。作成方法については、以下の2つに分けて説明します。•サーバアプリケーションの開発(COBOL編)

118118

asyncマップの作成(2)asyncマップの作成(2)

④[ファイル名]に「asyncmap」を確認し、[終了]をクリック

“asyncmap.xml”が追加されていることを確認する

⑤自動生成された“asyncmap.xml”をダブルクリックで開き、修正する

次のファイルを参照し、asyncmap.xmlを修正してください。

C:¥MyApplication¥COBOL¥Source¥client¥asyncmap.txt

Page 59: 5. 実習 (アプリケーション開発) - Fujitsu...61 5. 実習 (アプリケーション開発) それでは、実際にCORBAアプリケーションを作成してみましょう。作成方法については、以下の2つに分けて説明します。•サーバアプリケーションの開発(COBOL編)

119119

RecordManager.java にフレームワークのバックエンド連携を用いたCORBAクライアントアブリケーションとして、必要な処理を記載する

RecordManager.javaの作成RecordManager.javaの作成

RecordManager.javaに記述を追加する

⑥“src”-”addressBook”の”RecordManager.java”をダブルクリック

次のファイルを参照し、 RecordManager.javaを修正してください。

C:¥MyApplication¥COBOL¥Source¥client¥RecordManager.txt

Page 60: 5. 実習 (アプリケーション開発) - Fujitsu...61 5. 実習 (アプリケーション開発) それでは、実際にCORBAアプリケーションを作成してみましょう。作成方法については、以下の2つに分けて説明します。•サーバアプリケーションの開発(COBOL編)

120120

Step1. Webアプリケーションの設計

Step2. Webアプリケーションの作成

Step3. Webアプリケーションのビルド

Step4. Webアプリケーションの配備

ここ

●実習の流れ●実習の流れ

Step5. システムの実行例

本章では、Webアプリケーションを作成します。

作成するアプリケーションは簡単な住所録です。

まず、作成する住所録アプリケーションについて説明します。

その後、実際にInterstage Studioを使用してアプリケーションを作成します。

Page 61: 5. 実習 (アプリケーション開発) - Fujitsu...61 5. 実習 (アプリケーション開発) それでは、実際にCORBAアプリケーションを作成してみましょう。作成方法については、以下の2つに分けて説明します。•サーバアプリケーションの開発(COBOL編)

121121

アプリケーションのビルド(1)アプリケーションのビルド(1)

①“addressBook”プロジェクトを右クリックし、

メニューから[プロジェクトのビルド]を選択

※プロジェクトを選択し、ツールバーのビルドアイコンをクリックする方法でもビルドの実行が可能です。

◆ビルド時に以下の警告メッセージが出力されますが、問題ありません。そのまま続行してください。

ビルドアイコン

Page 62: 5. 実習 (アプリケーション開発) - Fujitsu...61 5. 実習 (アプリケーション開発) それでは、実際にCORBAアプリケーションを作成してみましょう。作成方法については、以下の2つに分けて説明します。•サーバアプリケーションの開発(COBOL編)

122122

②“warbuld.xml”を選択し、右ボタンメニューから[実行]- [2. Antビルド]を選ぶ

③[war-rebuild]にチェックが

ついているかを確認し、

[実行]をクリック

アプリケーションのビルド(2)アプリケーションのビルド(2)

Page 63: 5. 実習 (アプリケーション開発) - Fujitsu...61 5. 実習 (アプリケーション開発) それでは、実際にCORBAアプリケーションを作成してみましょう。作成方法については、以下の2つに分けて説明します。•サーバアプリケーションの開発(COBOL編)

123123

[ログコンソール]に“addressBook.war”が

作成された旨のメッセージが表示される

アプリケーションのビルド(3)アプリケーションのビルド(3)

Page 64: 5. 実習 (アプリケーション開発) - Fujitsu...61 5. 実習 (アプリケーション開発) それでは、実際にCORBAアプリケーションを作成してみましょう。作成方法については、以下の2つに分けて説明します。•サーバアプリケーションの開発(COBOL編)

124124

Step1. Webアプリケーションの設計

Step2. Webアプリケーションの作成

Step3. Webアプリケーションのビルド

Step4. Webアプリケーションの配備ここ

●実習の流れ●実習の流れ

Step5. システムの実行例

本章では、Webアプリケーションを作成します。

作成するアプリケーションは簡単な住所録です。

まず、作成する住所録アプリケーションについて説明します。

その後、実際にInterstage Studioを使用してアプリケーションを作成します。

Page 65: 5. 実習 (アプリケーション開発) - Fujitsu...61 5. 実習 (アプリケーション開発) それでは、実際にCORBAアプリケーションを作成してみましょう。作成方法については、以下の2つに分けて説明します。•サーバアプリケーションの開発(COBOL編)

125125

①“IJServerビュー”の“localhost”を右クリックし、

[Interstage管理コンソール]を選択

②[ユーザ名]と[パスワード]を指定し、

[ログイン]ボタンをクリック

Interstage管理コンソールの起動Interstage管理コンソールの起動

Page 66: 5. 実習 (アプリケーション開発) - Fujitsu...61 5. 実習 (アプリケーション開発) それでは、実際にCORBAアプリケーションを作成してみましょう。作成方法については、以下の2つに分けて説明します。•サーバアプリケーションの開発(COBOL編)

126126

①“ワークユニット”-[新規作成]を

選択

IJServerの作成(1)IJServerの作成(1)

注意:IJServer新規作成時には、Interstageが起動している必要があります。

Interstageが停止している場合、[Interstage管理コンソール]-[システム]画面にて起動してください。

Page 67: 5. 実習 (アプリケーション開発) - Fujitsu...61 5. 実習 (アプリケーション開発) それでは、実際にCORBAアプリケーションを作成してみましょう。作成方法については、以下の2つに分けて説明します。•サーバアプリケーションの開発(COBOL編)

127127

②[ワークユニット名]に

「addressBook」を設定し、

[詳細設定]の[表示]をクリック

IJServerの作成(2)IJServerの作成(2)

Page 68: 5. 実習 (アプリケーション開発) - Fujitsu...61 5. 実習 (アプリケーション開発) それでは、実際にCORBAアプリケーションを作成してみましょう。作成方法については、以下の2つに分けて説明します。•サーバアプリケーションの開発(COBOL編)

128128

③[ワークユニット設定]の[表示]を

クリックし、クラスパスに

「C:¥Interstage¥ODWIN¥etc¥Class¥ODjava2.jar」「C:¥Interstage¥APC¥lib¥ujiasync.jar」「C:¥Interstage¥APC¥lib¥uji.jar」「C:¥Documents and Settings¥インストールユーザ名¥My Documents¥Interstage Studio¥workspace¥addressBook¥ContextRoot¥WEB-INF」

を入力

④[作成]ボタンをクリック

IJServerの作成(3)IJServerの作成(3)

◆クラスパスの設定

・Apcoordinatorバックエンド連携機能をWebから利用する場合、サーブレットで設定されるアプリケーションの位置

(WEB-INF/classesやWEB-INF/lib)は使用されません。

EJBから利用の場合はjarに固めたものが使用可能になります。

・バックエンド連携をWebで利用する場合の推奨パターンは、以下になります。

- 適当なフォルダ(webの外部)にIDLから生成されたクラスを配置し、そのフォルダをCLASSPATHに設定します。

・ODjava2.jarはCORBAクライアントアプリケーションに必要なjarファイルです。

・uji.jarはフレームワークアプリケーションに必要なjarファイルです。

・ujiasync.jarはフレームワークのバックエンド連携サービスライブラリを使用する際に必要なjarファイルです。

C:¥Interstage¥ODWIN¥etc¥Class¥ODjava2.jarC:¥Interstage¥APC¥lib¥ujiasync.jarC:¥Interstage¥APC¥lib¥uji.jarC:¥Documents and Settings¥インストールユーザ名¥My Documents¥Interstage Studio ¥workspace¥addressBook¥ContextRoot¥WEB-INF

Page 69: 5. 実習 (アプリケーション開発) - Fujitsu...61 5. 実習 (アプリケーション開発) それでは、実際にCORBAアプリケーションを作成してみましょう。作成方法については、以下の2つに分けて説明します。•サーバアプリケーションの開発(COBOL編)

129129

“ワークユニット”を展開し、

“addressBook”が追加されていることを確認

正常に作成されたことを示す

メッセージが表示される

IJServerの作成(4)IJServerの作成(4)

Page 70: 5. 実習 (アプリケーション開発) - Fujitsu...61 5. 実習 (アプリケーション開発) それでは、実際にCORBAアプリケーションを作成してみましょう。作成方法については、以下の2つに分けて説明します。•サーバアプリケーションの開発(COBOL編)

130130

warファイルの配備(1)warファイルの配備(1)

①“addressBook.war”を右クリックし、

[プロパティ]を選択

Page 71: 5. 実習 (アプリケーション開発) - Fujitsu...61 5. 実習 (アプリケーション開発) それでは、実際にCORBAアプリケーションを作成してみましょう。作成方法については、以下の2つに分けて説明します。•サーバアプリケーションの開発(COBOL編)

131131

③[配備先]に「addressBook」を指定し、

[OK]をクリック

②[配備]をクリック

warファイルの配備(2)warファイルの配備(2)

※配備先は、 IJServerビューで「デフォルト配備先」を指定することでも設定可能です。

IJServer内の「addressbook」を右クリックし、[デフォルト配備先]をクリック

Page 72: 5. 実習 (アプリケーション開発) - Fujitsu...61 5. 実習 (アプリケーション開発) それでは、実際にCORBAアプリケーションを作成してみましょう。作成方法については、以下の2つに分けて説明します。•サーバアプリケーションの開発(COBOL編)

132132

④“addressBook”プロジェクトを

右クリックし、[配備]を選択

warファイルの配備(3)warファイルの配備(3)

Page 73: 5. 実習 (アプリケーション開発) - Fujitsu...61 5. 実習 (アプリケーション開発) それでは、実際にCORBAアプリケーションを作成してみましょう。作成方法については、以下の2つに分けて説明します。•サーバアプリケーションの開発(COBOL編)

133133

配備終了の

メッセージが表示される

⑤IJServer”addressBook”を展開し、Webアプリケーション“addressBook”が配備されていることを確認

warファイルの配備(4)warファイルの配備(4)

Page 74: 5. 実習 (アプリケーション開発) - Fujitsu...61 5. 実習 (アプリケーション開発) それでは、実際にCORBAアプリケーションを作成してみましょう。作成方法については、以下の2つに分けて説明します。•サーバアプリケーションの開発(COBOL編)

134134

IJServerの起動(1)IJServerの起動(1)

①IJServer“addressBook”を右クリックし、

[起動]を選択

◆配備時、「配備後のIJServer起動」を“起動する”に設定した場合、すでにIJServerが起動しているので、本処理は実行する必要がありません。

※IJServerビューで、起動したいIJServerを選択し、起動アイコンをクリックする方法でも起動できます。

起動アイコン

Page 75: 5. 実習 (アプリケーション開発) - Fujitsu...61 5. 実習 (アプリケーション開発) それでは、実際にCORBAアプリケーションを作成してみましょう。作成方法については、以下の2つに分けて説明します。•サーバアプリケーションの開発(COBOL編)

135135

IJServerの起動(2)IJServerの起動(2)

起動終了の

メッセージが表示される

Page 76: 5. 実習 (アプリケーション開発) - Fujitsu...61 5. 実習 (アプリケーション開発) それでは、実際にCORBAアプリケーションを作成してみましょう。作成方法については、以下の2つに分けて説明します。•サーバアプリケーションの開発(COBOL編)

136136

Step1. Webアプリケーションの設計

Step2. Webアプリケーションの作成

Step3. Webアプリケーションのビルド

Step4. Webアプリケーションの配備

ここ

●実習の流れ●実習の流れ

Step5. システムの実行例

本章では、Webアプリケーションを作成します。

作成するアプリケーションは簡単な住所録です。

まず、作成する住所録アプリケーションについて説明します。

その後、実際にInterstage Studioを使用してアプリケーションを作成します。

Page 77: 5. 実習 (アプリケーション開発) - Fujitsu...61 5. 実習 (アプリケーション開発) それでは、実際にCORBAアプリケーションを作成してみましょう。作成方法については、以下の2つに分けて説明します。•サーバアプリケーションの開発(COBOL編)

137137

アプリケーションの実行(1)アプリケーションの実行(1)

①IEなどのブラウザを起動し、[アドレス]に「http://localhost/addressBook/main.jsp」を入力すると、初期画面が表示される

注意:アプリケーションを実行する前に以下を確認してください。

・サーバアプリケーションが起動している・WWWサーバが起動している

確認方法は、「Interstage管理コンソール」の「サービス」「Webサーバ」を選択してください。「状態」が「起動」になっているかを確認してください。

また、「環境設定」タブを選択して、ポート番号が「80」以外の場合(例:「81」の場合)、上記のアドレスは、「 http://localhost:81/addressBook/main.jsp 」となります。

Page 78: 5. 実習 (アプリケーション開発) - Fujitsu...61 5. 実習 (アプリケーション開発) それでは、実際にCORBAアプリケーションを作成してみましょう。作成方法については、以下の2つに分けて説明します。•サーバアプリケーションの開発(COBOL編)

138138

②[従業員番号]を入力し、[参照]ボタンをクリック

参照画面が表示される

アプリケーションの実行(2)アプリケーションの実行(2)

③[戻る]ボタンをクリック

Page 79: 5. 実習 (アプリケーション開発) - Fujitsu...61 5. 実習 (アプリケーション開発) それでは、実際にCORBAアプリケーションを作成してみましょう。作成方法については、以下の2つに分けて説明します。•サーバアプリケーションの開発(COBOL編)

139139

更新画面が表示される

アプリケーションの実行(3)アプリケーションの実行(3)

⑤[電話番号]、[住所]を変更し、[反映]ボタンをクリック

④[従業員番号]を入力し、[更新]ボタンをクリック

Page 80: 5. 実習 (アプリケーション開発) - Fujitsu...61 5. 実習 (アプリケーション開発) それでは、実際にCORBAアプリケーションを作成してみましょう。作成方法については、以下の2つに分けて説明します。•サーバアプリケーションの開発(COBOL編)

140140

アプリケーションの実行(4)アプリケーションの実行(4)

⑦[戻る]ボタンをクリック

⑥そのまま[参照]ボタンをクリックし、アドレスが更新されたことを確認

Page 81: 5. 実習 (アプリケーション開発) - Fujitsu...61 5. 実習 (アプリケーション開発) それでは、実際にCORBAアプリケーションを作成してみましょう。作成方法については、以下の2つに分けて説明します。•サーバアプリケーションの開発(COBOL編)

141141

⑧[一覧]ボタンをクリック

一覧画面が表示される

アプリケーションの実行(5)アプリケーションの実行(5)

Page 82: 5. 実習 (アプリケーション開発) - Fujitsu...61 5. 実習 (アプリケーション開発) それでは、実際にCORBAアプリケーションを作成してみましょう。作成方法については、以下の2つに分けて説明します。•サーバアプリケーションの開発(COBOL編)

■ NetCOBOL for Windowsの体験版について

NetCOBOLホームページ

http://software.fujitsu.com/jp/cobol/

「体験版」より、お申し込みください。

■ Interstage Studioの体験版について

富士通営業、SEにお申し付けください。

■ 本書に関するお問い合わせ先

NetCOBOLホームページ

http://software.fujitsu.com/jp/cobol/

Interstageホームページ

http://interstage.fujitsu.com/jp/studio/

「本製品のお問い合わせ」より、お願いします。

ご質問に関しては、記述箇所のページ、内容を明示してください。

ご質問の内容によっては、回答に数日またはそれ以上の期間を

要する場合があります。

Page 83: 5. 実習 (アプリケーション開発) - Fujitsu...61 5. 実習 (アプリケーション開発) それでは、実際にCORBAアプリケーションを作成してみましょう。作成方法については、以下の2つに分けて説明します。•サーバアプリケーションの開発(COBOL編)

N e t C O B O L