bea ホーム | 製品 | dev2dev | support | askBEA |
![]() |
![]() |
|
![]() |
e-docs > Tuxedo > Tuxedo Workstation コンポーネント > Workstation コンポーネントの使用 |
Tuxedo Workstation コンポーネント
|
Workstation コンポーネントの使用
以下の節では、Windows および UNIX システムにおける BEA Tuxedo ATMI Workstation コンポーネントの使用について説明します。
クライアント・プログラムを作成する
ワークステーション用のクライアント・プログラムは、BEA Tuxedo システムの管理ドメイン内のクライアント・プログラム (ネイティブ・クライアント) と同じ方法で開発できます。若干の例外を除いて、すべての ATMI および FML 関数をネイティブ・クライアントおよびワークステーション・クライアントで利用できます。
注記 ネイティブ・クライアントでは利用できるもののワークステーション・クライアントでは利用できない ATMI 関数の例として tpadmcall() があります。
ワークステーション・クライアントの相互運用性に関する制約
BEA Tuxedo リリース 7.1 のワークステーション・クライアントは、次のいずれかの場合に、リリース 7.1 より前の BEA Tuxedo システム・アプリケーションと相互運用します。
BEA Tuxedo リリース 7.1 以降のワークステーション・クライアントで、1 つのコンテキストに複数のスレッドがある場合は、リリース 7.1 より前の BEA Tuxedo システムとは相互運用しません。
クライアント・プログラムを作成する
ワークステーション・クライアントのプログラムをコンパイルし、リンクするには、buildclient(1) コマンドを使用します。ネイティブ・ノード (BEA Tuxedo システムがフル・インストールされているノード) でワークステーション・クライアントを作成する場合は、-w オプションを指定し、クライアントの作成にはワークステーション・ライブラリが必要であることを示します。指定しない場合、デフォルトでは、ネイティブ・ノードにあるネイティブ・ライブラリとワークステーション・ライブラリのうち、ネイティブ・ライブラリが使用されます。つまり、-w オプションを指定すると、ワークステーション・クライアントでは正しいライブラリが使用されることが保証されます。ワークステーションには、ワークステーション・ライブラリしかないため、-w オプションを指定する必要はありません。
以下のリストは、ネイティブ・ノードでの buildclient(1) コマンド行の例です。
コード リスト 2-1 buildclient コマンド行
TUXDIR=/var/opt/tuxedo CC=ncc; export TUXDIR CC
buildclient -w -o wsclt -f wsclt.c -f “userlib1.a userlib2.a”
-o オプションには、出力ファイルの名前を指定します。入力ファイルを指定するには、-f firstfiles オプションを使用し、システム・ライブラリより先にリンクされることを示します。上の例に示すように、TUXDIR 環境変数を定義し、buildclient コマンドの実行時にシステム・ライブラリが検索されるようにしなければなりません。CC は、デフォルトで cc になりますが、上の例のように、別のコンパイラを設定することもできます。
関連項目
BEA Tuxedo システムに組み込まれているクライアントを使用する
wud および wud32 は、BEA Tuxedo システムに組み込まれているワークステーション用のドライバ・プログラムです。これらのドライバ・プログラムは、ワークステーション・ライブラリを使用して作成する、標準的な BEA Tuxedo のクライアント・プログラムである ud および ud32 に基づいています。
BEA Tuxedo システム・サーバに FML バッファを送信するには、wud(1) を使用します。FBFR32 型の FML32 フィールド化バッファの場合は、wud32 を使用します。
セキュリティ付きアプリケーションで wud を使用する
wud をセキュリティ付きアプリケーションで実行する場合は、アプリケーション・パスワードを指定しないとアプリケーションにアクセスできません。端末から標準入力を行う場合に wud を実行すると、アプリケーション・パスワードの入力を求められます。wud では通常、スクリプトからクライアント・プログラムを実行しますが、この場合、パスワードは APP_PW 環境変数から取得されます。アプリケーション・パスワードが必要な場合に、この環境変数が指定されていないと、wud は異常終了します。
APP_PW 環境変数と、コンフィギュレーション・ファイルの SECURITY パラメータ (APP_PW を指定するとセキュリティ機能が有効になる) を混同しないでください。
関連項目
ワークステーションで BEA Tuxedo システムのクライアントを実行する
開発およびテストが終了したクライアント・プログラムは、ワークステーションに移動でき、ユーザ側で利用可能になります。
ワークステーション・クライアントのディレクトリ構造
次の表は、BEA Tuxedo システムの Workstation コンポーネントをインストールした場合のワークステーション・クライアントのディレクトリ構造を示しています。
環境変数を設定する ワークステーション・クライアントでは、いくつかの環境変数を使用します。次の表は、ワークステーション・クライアントがアプリケーションに参加しようとするときに、tpinit(3c) または TPINITIALIZE(3cbl) によってチェックされる環境変数を示しています。これらの環境変数の設定方法については、『BEA Tuxedo アプリケーションの設定』の11-1 ページの「ワークステーション・クライアントの定義」を参照してください。
UNIX ワークステーション上のワークステーション・クライアントでは、使用する BEA Tuxedo システムの機能に応じて、上記以外の環境変数が必要になる場合があります。状況に応じて必要となる変数については、『BEA Tuxedo のファイル形式とデータ記述方法』の compilation(5) リファレンス・ページを参照してください。 環境ファイルを作成する 作成した環境ファイルは、tpinit(3c) または TPINITIALIZE(3cbl) の呼び出し時に読み込まれます。次のリストは、2 つの異なるアプリケーションで使用されるサンプル・ファイルです。 コード リスト 2-2 環境ファイル このファイルの形式は次のとおりです。
TUXDIR=/opt/tuxedo
[application1]
;これはコメントです
/* これはコメントです */
# これはコメントです
// これはコメントです
set FIELDTBLS=app1_flds
set FLDTBLDIR=/opt/app1/udataobj
[application2]
FIELDTBLS=app2_flds
FLDTBLDIR=/opt/app2/udataobj
variable=value
または
set variable=value
ここで、variable は、先頭がアルファベット文字またはアンダーライン文字で、全体が英数字またはアンダーライン文字のみからなる文字列です。また、valueには改行文字を除くすべての文字を使用できます。
[label]
label はセクションの名前であり、上記の variable の規則が適用されます。31 文字を超える部分は切り捨てられます。
tuxreadenv を使用する
tuxreadenv(3c) 関数を呼び出すと、環境ファイルが読み込まれ、プラットフォームに関係なく、プロセス全体の環境に環境変数が追加されます。変数を利用するには tuxgetenv(3c) を使用し、変数をリセットするには、tuxputenv(3c) を使用します。
void tuxreadenv(char *file, char *label)
file が NULL の場合、デフォルトのファイル名が使用されます。各プラットフォームのデフォルトのファイル名は次のとおりです。
label の値が NULL の場合は、グローバル・セクションの変数だけが環境に組み込まれます。label が他の値の場合、グローバル・セクションの変数と、label に一致するセクション内の変数が環境に入れられます。
次の場合は、userlog にエラー・メッセージが記録されます。
tpinit(3c) を明示的に呼び出すか、または別の ATMI 関数を呼び出して暗黙的に呼び出すたびに、ワークステーション・クライアントには tuxreadenv(3c) が自動的に呼び出されます。環境に設定されている WSENVFILE は、環境ファイルを示します。設定されていない場合は、tuxreadenv() にファイル名として NULL が渡され、デフォルトのファイルが使用されます。環境に設定されている WSAPP は、環境ファイルのセクションのラベルとして使用されます。設定されていない場合は、tuxreadenv() にラベル名として NULL が渡されます。アプリケーション・クライアントは、tuxreadenv() を明示的に呼び出すこともできます。
インプリメントされた環境は、プラットフォームごとに異なる方法で使用できます。環境に対する共通のインターフェイスは、既存の tuxgetenv(3c) 関数および tuxputenv(3c) 関数により提供されます。これらの関数により、次の変数にアクセスできます。
関連項目
マルチスレッド化またはマルチコンテキスト化されたワークステーション・クライアントをアプリケーションに参加させる
BEA Tuxedo アプリケーションに参加するには、マルチスレッドのワークステーション・クライアントは、たとえシングルコンテキスト・モードで動作している場合でも、必ず TPMULTICONTEXTS フラグを設定して tpinit() 関数を呼び出さなければなりません。
関連項目
![]() |
![]() |
![]() |
![]() |
||
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |