Interstage Application Server アプリケーション作成ガイド (CORBAサービス編)
目次 索引 前ページ次ページ

付録G 旧互換機能> G.2 アプリケーションの開発(OOCOBOL)

G.2.6 OOCOBOLアプリケーション使用時の注意事項

CORBAアプリケーション開発時の留意事項”についても参照してください。

関数名/変数名の扱い

予約語の扱い

アプリケーションのビルド時の注意事項

Windows(R)アプリケーションの作成

 Windows(R)でOOCOBOLアプリケーションを作成する場合の注意点を以下に示します。

備考

 CORBAサービスのインストールフォルダを“C:\Interstage\ODWIN”として説明します。

クライアントアプリケーションの作成

 クライアントアプリケーションを作成する場合の翻訳・リンク手順を以下に示します。OOCOBOLアプリケーションのビルドには“COBOLプロジェクトマネージャー”を使用します。

翻訳・リンク手順

  1. IDLコンパイルを実行します。
     IDLc -oocob IDLファイル名
  2. 1で生成されたファイルをCOBOLソースファイルにデータ型、データ型ヘルパー、インタフェースクラス、インタフェースクラスヘルパー、スタブクラス、Narrowスタブ、クライアントmainの順に追加します。
  3. 「翻訳オプション」には以下の設定をします。
     LIB、REPIN(“翻訳時のオプションの設定”参照)
  4. ライブラリファイルを設定します。
    [UNICODE、UTF8以外の場合] C:\Interstage\ODWIN\LIB\ODOOCOB.LIB
                  C:\Interstage\ODWIN\LIB\ODCNOOCOB.LIB
    [UNICODE、UTF8の場合]   C:\Interstage\ODWIN\LIB\ODOOCOBUC.LIB
                  C:\Interstage\ODWIN\LIB\ODCNOOCOBUC.LIB
  5. 相互参照がある場合は、リポジトリファイルを作成します。「翻訳オプション」「その他の翻訳オプション」に“CREATE(REP)”として翻訳します。相互参照がない場合は、必要ありません。

リンク時に指定するライブラリ

 リンク時に必ず指定するライブラリは以下のとおりです。

 [UNICODE、UTF8以外の場合]C:\Interstage\ODWIN\LIB\ODOOCOB.LIB
 [UNICODE、UTF8の場合]  C:\Interstage\ODWIN\LIB\ODOOCOBUC.LIB

 ネーミングサービスを利用するときは以下のライブラリを追加します。

 [UNICODE、UTF8以外の場合]C:\Interstage\ODWIN\LIB\ODCNOOCOB.LIB
 [UNICODE、UTF8の場合]  C:\Interstage\ODWIN\LIB\ODCNOOCOBUC.LIB

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

 サーバアプリケーションを作成する場合の翻訳・リンク手順を以下に示します。OOCOBOLアプリケーションのビルドには“COBOLプロジェクトマネージャー”を使用します。

翻訳・リンク手順

  1. IDLコンパイルを実行します。
     IDLc -oocob IDLファイル名
  2. 1で生成されたファイルを“インタフェース名.dll”のCOBOLソースファイルにデータ型、データ型ヘルパー、インタフェースクラス、インタフェースクラスヘルパー、ユーザ定義クラス、Tieクラス、Initプログラム、Newプログラム、Narrowスケルトンの順に追加します。
  3. “インタフェース名.dll”に以下のライブラリを設定します。
    [UNICODE、UTF8以外の場合]C:\Interstage\ODWIN\LIB\ODOOCOBSV.LIB
    [UNICODE、UTF8の場合]C:\Interstage\ODWIN\LIB\ODOOCOBSVUC.LIB
  4. 実行ファイルのCOBOLソースファイルにサーバmainを追加し、ライブラリファイルに以下のものを追加します。
    [UNICODE、UTF8以外の場合]C:\Interstage\ODWIN\LIB\ODOOCOBSV.LIB
    [UNICODE、UTF8の場合]C:\Interstage\ODWIN\LIB\ODOOCOBSVUC.LIB
  5. 相互参照がある場合は、リポジトリファイルを作成します。「翻訳オプション」「その他の翻訳オプション」に“CREATE(REP)”として翻訳します。相互参照がない場合は、必要ありません。

リンク時に指定するライブラリ

 リンク時に必ず指定するライブラリは以下のとおりです。

 [UNICODE、UTF8以外の場合]C:\Interstage\ODWIN\LIB\ODOOCOBSV.LIB
 [UNICODE、UTF8の場合]C:\Interstage\ODWIN\LIB\ODOOCOBSVUC.LIB

 ネーミングサービスを利用するときは以下のライブラリを追加します。

 [UNICODE、UTF8以外の場合]C:\Interstage\ODWIN\LIB\ODCNSOOCOB.LIB
 [UNICODE、UTF8の場合]C:\Interstage\ODWIN\LIB\ODCNSOOCOBUC.LIB

 クライアント用とサーバ用のライブラリを同時に指定することはできません。サーバアプリケーションが別のサーバと通信する場合は、サーバ用のライブラリをリンクします。

翻訳時のオプションの設定

 翻訳時のオプションを設定します(“プロジェクト”→“オプション”→“翻訳オプション”)。

 LIB
 登録集が格納されているフォルダを指定します。翻訳オプションの追加で“LIB”を選択し、登録集ファイルの入力先に“C:\Interstage\ODWIN\INCLUDE\OOCOB”を指定します。
 REPIN
 リポジトリファイルが格納されているフォルダを指定します。翻訳オプションの追加で“REPIN”を選択し、リポジトリファイルの入力先に“C:\Interstage\ODWIN\REP”を指定します。UNICODEを使用する場合は、“C:\Interstage\ODWIN\REP\UNICODE”を指定します。
 THREAD
 アプリケーションの動作モードを指定します。スレッドモードのアプリケーションを作成するときは、“マルチスレッドとする”を選択し、プロセスモードのアプリケーションを作成するときは“シングルスレッドとする”を選択します。
 RCS
 実行時のコード系を設定します。翻訳オプションの追加で、UNICODEアプリケーション、またはUTF8アプリケーションを作成する場合は、“RCS”を選択し、“UCS2-UNICODE(UCS2)を使用する”を選択します。
 ALPHAL
 英小文字を英大文字と等価に扱う(ALPHAL)か、扱わない(NOALPHAL)かを指定します。本オプションを指定する場合は、本製品が提供するOOCOBOLのAPI、ネーミングサービス、およびIDLコンパイラが出力したクラス、メソッドはすべて大文字で記述してください(IDLコンパイラが出力するOOCOBOLのファイルでは、コメント行以外はすべて大文字で記述されます)。

モジュールの単位

 サーバアプリケーションは初期化する実行モジュール(EXE)と、オペレーションの実装部であるライブラリ(DLL)の2つを作成します。実行モジュール側では初期化(CORBA-ORB_INIT)を行い、サーバを活性化させる(CORBA-BOA-IMPL_IS_READYまたはCORBA-BOA-OBJ_IS_READY)ところまでの処理を行います。
 ライブラリ側は、1つのライブラリに複数のインタフェースを実装することができます。インタフェースごとにライブラリを分ける場合は、データ型クラスファイルはインタフェースのライブラリとは別のライブラリ(DLL)にし、インタフェースクラスのライブラリからデータ型クラスのライブラリをリンクするようにします。

  // IDL
  module M {
      struct S { string s; };
      typedef long L;
      interface I1 {
          ....
      };
      interface I2 {
          ...
      };
  };

 上記IDLのサーバアプリケーションのライブラリをインタフェースごとに分けるときは、以下の構成にします。

  M-I1のライブラリ→
               (リンク)データ型のライブラリ
  M-I2のライブラリ→

[M-I1のライブラリに含まれるファイル]

  M-I1.COB
  M-I1--HELPER.COB
  M-I1--TIE.COB
  M-I1--NARROWSKEL.COB
  M-I1--NEW.COB
  M-I1の実装クラスファイル
  M-I1―INITの定義ファイル

[M-I2のライブラリに含まれるファイル]

  M-I2.COB
  M-I2--HELPER.COB
  M-I2--TIE.COB
  M-I2--NARROWSKEL.COB
  M-I2--NEW.COB
  M-I2の実装クラスファイル
  M-I2―INITの定義ファイル

[データ型のライブラリに含まれるファイル]

  M-S.COB
  M-S--HELPER.COB
  L--HELPER.COB

目次 索引 前ページ次ページ

Copyright 2008 FUJITSU LIMITED