ページの先頭行へ戻る
Interstage Application Server アプリケーション作成ガイド(データベース連携サービス編)

9.2 APMの構成

  コンポーネントトランザクションサービス上で動作するサーバアプリケーションの構成は、CORBAサービス上で動作するサーバアプリケーションとほぼ同じですが、初期化処理部は、コンポーネントトランザクションサービスが処理するため、ユーザは意識する必要がありません。ユーザは、ユーザサービス処理部だけ作成します。

  なお、サーバアプリケーションの作成形態に、プロセスモードとスレッドモードがあります。プロセスモードのサーバアプリケーションは、シングルスレッドで動作します。スレッドモードのサーバアプリケーションは、Interstageの制御用スレッドが複数起動します。ただし、ユーザのサービス処理部はマルチスレッド(スレッド多重)で動作しません。

  以下に、コンポーネントトランザクションサービス上で動作するサーバアプリケーションの構成を示します。

初期化処理部

  CORBAサービスおよびデータベースのアクセスに関する初期化を行います。この処理は、コンポーネントトランザクションサービス提供ライブラリで吸収します。

ユーザサービス処理部

  ユーザがそれぞれのデータベースへアクセスする操作の処理です。

サーバ管理ライブラリ

  トランザクション管理をサポートする以下のライブラリを結合します。

  libservapl.lib
  libtacebasent.lib
  libservaplcpp.lib
  fjotsld.obj

  libservapl.so
  libtacebasent.so
  libservaplcpp.so
  libfjots.so

XA連携用プログラム

  XAインタフェースとの連携用プログラムです。XA連携用プログラムは、otsmkxapgmコマンドで作成します。リソースの種別ごと作成しますが、1つのアプリケーションから複数のリソースへアクセスするような場合は、リソースごとのxa_switch_t構造体の名前を指定して1つのXA連携用プログラムを作成します。
  xa_switch_t構造体の詳細な情報は、データベースのマニュアルを参照してください。また、otsmkxapgmコマンドの詳細については、“リファレンスマニュアル(コマンド編)”を参照してください。

  なお、以下のXA連携用プログラムを標準に提供しています。該当リソースを使用する場合は、otsmkxapgmコマンドで作成する必要はありません。

  このうち、Symfoware/RDB用のXA連携用プログラムは、プロセスモード用とスレッドモード用があり、スレッドモード用のXA連携用プログラムは、Symfoware/RDBから提供されているスレッド用ライブラリを意識したものです。よって、Symfoware/RDBを使用する場合、環境にあわせてスレッドモード用ライブラリあるいは、プロセスモード用ライブラリを使用してください。また、MQDに関係するXA連携用プログラムは、すべてスレッドモード用になります。

データベース依存ライブラリ

  データベースから提供されるライブラリを結合します。Oracle,SQL Serverからは以下に示すファイルが提供されています。

  Oracle(Ver.8.0.5)の場合:XA80.LIB, OCI.LIB, SQLLIB80.LIB
  Oracle(Ver.8.1.5)の場合:ORAXA8.LIB, OCI.LIB, ORASQL8.LIB
  SQL Serverの場合:NTWDBLIB.LIB

  データベースから提供されるライブラリを結合します。Oracleからは以下に示すファイルが提供されています。Symfoware Serverを使用する場合は、C言語あるいはCOBOLでアプリケーションを作成してください。

  Oracle(Ver.8.0.5)の場合:libclntsh.a, libsql.a, libcommon.a, libcore4.a, libclient.a, libnlsrtl3.a
  Oracle(Ver.8.1.6)の場合:libclntsh.so, libsql8.a, libcommon8.a, libcore8.a, libclient8.a, libnls8.a

  データベースから提供されるライブラリを結合します。Oracleからは以下に示すファイルが提供されています。

  Oracle(Ver.9.0.1)の場合:libclntsh.so, libsql9.a, libcommon9.a, libcore9.a, libclient9.a, libnls9.a

  なお、データベースライブラリについては、使用するデータベースのマニュアルで確認してください。

CORBAサービス提供ライブラリ


  CORBAサービスから提供されるライブラリ(ODSV.LIB,ODSVCPP.LIB,ODCNSCPP.LIB)を結合します。Interstageインストールフォルダ\ODWIN\lib配下に格納されています。


  CORBAサービスから提供されるライブラリ(libOM.so,libOMcpp.soあるいはlibOMcpp50.so)を結合します。CORBAサービスのインストールディレクトリ/lib配下に格納されています。
  ただし、libOM.soはスレッド用、プロセス用があるので、サーバアプリケーション環境にあわせて該当するライブラリを結合してください。スレッド用は、CORBAサービスのインストールディレクトリ配下の/libに、またプロセス用はCORBAサービスのインストールディレクトリ配下の/lib/ntにあります。
  サーバアプリケーションを起動する際、環境変数LD_LIBRARY_PATHには、サーバアプリケーション環境にあわせてCORBAサービスのライブラリパスを設定してください。

コンポーネントトランザクションサービス提供ライブラリ


  コンポーネントトランザクションサービスから提供されるライブラリを結合します。コンポーネントトランザクションサービスのインストールフォルダ\lib配下に格納されています。


  コンポーネントトランザクションサービスから提供されるライブラリを結合します。コンポーネントトランザクションサービスのインストールディレクトリ/lib配下に格納されています。