ページの先頭行へ戻る
Interstage Application Server/Interstage Web Server Express リファレンスマニュアル(コマンド編)
Interstage

19.3 otsmkxapgm

名前

otsmkxapgm  -  XA連携用プログラムの作成

形式


otsmkxapgm [-java] | [-t {process|thread}] -s switch_name... -r "library" [-c] -o name


otsmkxapgm [-java -r "library"] | [-t {process|thread}] -s switch_name... [-c] -o name

機能説明


otsmkxapgmコマンドは、サーバアプリケーションがデータベースとのXA連携を可能にするためのプログラムをライブラリファイルとして2つ作成します。

otsmkxapgmコマンドは、対象となるデータベースのxa_switch_t構造体の名前と出力ファイル名を入力します。またデータベースベンダが公開するライブラリも指定します。Java言語のサーバアプリケーション用にXA連携プログラムを作成する場合は、-javaオプションを指定してください。

なお、本コマンドを実行するとMicrosoft(R) Visual Studio(R)のコンパイルコマンドとリンクコマンドが動作します。



otsmkxapgmコマンドは、サーバアプリケーションがデータベースとのXA連携を可能にするためのプログラムをオブジェクトファイルとして作成します。
otsmkxapgmコマンドは、対象となるデータベースのxa_switch_t構造体の名前と出力ファイル名を入力します。

マルチリソース連携用のXA連携用プログラムを作成する場合は、xa_switch_t構造体名を連携する分指定します。


otsmkxapgmコマンドのオプションを以下に説明します。

-s

XA連携するデータベースのxa_switch_t構造体の名前を指定します。
オプションとオプション引数は、複数指定できます。省略できません。

-java

Java言語を利用したサーバアプリケーション(Javaサーバ)用のXA連携用プログラムを作成します。Javaサーバ用XA連携用プログラムを作成する場合に指定してください。


Javaサーバ用XA連携用プログラムには、libthread.soがリンクされます。


Javaサーバ用XA連携用プログラムには、libpthread.soがリンクされます

-r

データベースベンダが公開するライブラリを、以下のバイト以内の文字列で指定します。


  • 1024バイト


  • 2048バイト

以下の規約でコマンドを指定してください。

データベース

ライブラリ

Symfoware/RDB


"/libpath:'ライブラリの格納パス' F3CWXA.LIB F3CWDRV.LIB"


"/libpath:'ライブラリの格納パス' F3CWXA_x64.LIB F3CWDRV_x64.LIB"


"-L'ライブラリの格納パス' -lrdbxa -lsqldrv"


"-L'ライブラリの格納パス' -lrdbxa64 -lsql64drv"

Oracle


[Oracle 10g 系]
"/libpath:'ライブラリの格納パス' ORAXA10.LIB"

[Oracle 11g 系]
"/libpath:'ライブラリの格納パス' ORAXA11.LIB"


"-L'ライブラリの格納パス' -lclntsh"

注意

  • ライブラリ情報およびオブジェクト情報は、半角ダブルクォート(")で囲む必要があります。

  • ライブラリの格納パスは、半角シングルクォート(')で囲む必要があります。


  • 本オプションは、省略できません。


  • マルチリソース用のXA連携用プログラムを作成する場合は、以下の規約で指定した情報を、空白文字を区切り文字として複数指定します。

    -r"/libpath:'librarypathname' /libpath:'librarypathname'… libraryname…"

    librarypathname:ライブラリ格納パス
    librarypath:各データベースベンダが公開するライブラリ名

-t {process|thread}

「process」を指定すると、プロセスモードとして作成します。
「thread」を指定すると、スレッドモードとして作成します。
本オプションを省略した場合は、「process」とみなされます。

-c

XA連携プログラムをバックアップ対象とする場合は、本オプションを指定します。本オプションを指定した場合、-oオプションにはXA連携プログラム名のファイル名だけを指定してください。
XA連携プログラムは、以下に作成されます。

C:\Interstage\ots\var\clone

/opt/FSUNots/var/clone

/opt/FJSVots/var/clone
-o

出力するXA連携用プログラム名を指定します。XA連携用プログラム名に指定可能なパス名の最大長は、255バイトです。本オプションは、省略できません。


また、ファイルの拡張子を"DLL"としてください。指定したファイルの拡張子"DLL"と"LIB"のライブラリファイルをコマンドの結果として作成します。絶対パス名/ファイル名を指定してもかまいませんが、ファイル名を指定する場合は、本コマンド実行時のカレントフォルダに作成されます。


通常は、ファイルの拡張子を"o"としてください。また、-javaと同時に指定した場合は、ファイルの拡張子を"so"としてください。絶対パス名/ファイル名を指定してもかまいませんが、ファイル名を指定する場合は、本コマンド実行時のカレントディレクトリに作成されます。

注意事項


使用例


Symfoware用のXA連携用プログラム「otssymxa.dll」を作成する場合

otsmkxapgm -s RDBII_xa_switch -r "/libpath:'c:\SFWSV\ESQL\LIB'F3CWXA.LIB F3CWDRV.LIB" -o D:\temp\ots\otssymxa.dll



Symfoware用のXA連携用プログラム「otssymxaj.dll」を作成する場合

otsmkxapgm -s RDBII_xa_switch -r "/libpath:'c:\SFWSV\ESQL\LIB'F3CWXA_x64.LIB F3CWDRV_x64.LIB" -o D:\temp\ots\otssymxa.dll



Symfoware用のXA連携用プログラム「otssymxa.o」をスレッドモードで作成する場合

otsmkxapgm -t thread -s RDBII_xa_switch -o otssymxa.o



Symfoware用のXA連携用プログラム(Javaサーバアプリケーション用)「otssymxaj.dll」を作成する場合

otsmkxapgm -java -s RDBII_xa_switch -r "/libpath:'C:\SFWSV\ESQL\LIB' F3CWXA.LIB F3CWDRV.LIB" -o D:\temp\ots\otssymxaj.dll



Symfoware用のXA連携用プログラム(Javaサーバアプリケーション用)「otssymxaj.dll」を作成する場合

otsmkxapgm -java -s RDBII_xa_switch -r "/libpath:'C:\SFWSV\ESQL\LIB' F3CWXA_x64.LIB F3CWDRV_x64.LIB"   -o D:\temp\ots\otssymxaj.dll



Symfoware用のXA連携用プログラム(Javaサーバアプリケーション用)「libsymxaj.o」を作成する場合
環境変数RDB2LIBには、Symfoware/RDBのライブラリディレクトリを指定する必要があります。

otsmkxapgm -java -r ”-L$(RDB2LIB) -lrdbxa -lsqldrv” -s RDBII_xa_switch -o libsymxaj.so



SymfowareとOracleの2つのデータベースと連携する1つのXA連携用プログラムを作成する場合(1つのアプリケーション上で2つのデータベースにアクセスする場合)

otsmkxapgm -s RDBII_xa_switch -s xaosw -r "/libpath:'C:\SFWSV\ESQL\LIB' /libpath:''C:\oracle\product\10.2.0\db_1\RDBMS\XA' F3CWXA.LIB F3CWDRV.LIB ORAXA10.LIB" -o D:\temp\ots\otsmultixa.dll



SymfowareとOracleの2つのデータベースと連携する1つのXA連携用プログラム「otsmultixa.o」を作成する場合(1つのアプリケーション上で2つのデータベースにアクセスする場合)

otsmkxapgm -s RDBII_xa_switch -s xaosw -o otsmultixa.o



Oracle用(バージョン:10.2.0)のXA連携用プログラム「otsoraxa.dll」を作成する場合

otsmkxapgm -s xaosw -r "/libpath:'C:\oracle\product\10.2.0\db_1\RDBMS\XA' ORAXA10.LIB " -o D:\temp\ots\otsoraxa.dll



Oracle用のXA連携用プログラム「otsoraxa.o」を作成する場合

otsmkxapgm -s xaosw -o otsoraxa.o