bea ホーム | 製品 | dev2dev | support | askBEA
BEA Logo Tuxedo
 ドキュメントのダウンロード   サイトマップ   用語集 
検索
0

COBOL を使用した Tuxedo アプリケーションのプログラミング

 Previous Next Contents View as PDF  

Workstation コンポーネントに対する COBOL 言語のバインディング

ここでは、次の内容について説明します。

Workstation プラットフォームの詳細については、『BEA Tuxedo Workstation コンポーネント』を参照してください。

 


UNIX のバインディング

以下に、COBOL 言語を使用して UNIX 上で BEA Tuxedo アプリケーションを開発する場合に、クライアント・プログラムを作成してビルドする方法、および正しい環境変数の設定方法について説明します。

クライアント・プログラムの作成

UNIX プラットフォーム用 COBOL クライアント・プログラムは、BEA Tuxedo 管理ドメインで COBOL クライアントを開発する場合と同じように開発できます。すべての ATMI 呼び出しを使用することができます。

クライアント・プログラムを作成する

ワークステーション・クライアント・プログラムをコンパイルしてリンクするには、buildclient(1) コマンドを使用します。ネイティブ・ノードで UNIX ワークステーション・クライアントをビルドする場合、-w オプションを指定して、ワークステーション・ライブラリを使用してクライアントがビルドされるようにします。

ネイティブ・ノードでクライアントをビルドする場合に、ネイティブ・ライブラリとワークステーション・ライブラリの両方が存在しているときは、デフォルトでネイティブ・ライブラリが使用されます。その場合、-w オプションを指定すると、ワークステーション・クライアントに対応するライブラリが必ず使用されます。

ワークステーション・ライブラリのみが存在する場合は、-w を指定する必要はありません。

次のコード例は、ネイティブ・ノード上で buildclient コマンドを使用する方法を示しています。

コード リスト 12-1 UNIX プラットフォームでの buildclient の実行

ALTCC=cobcc ALTCFLAGS="-I /APPDIR/include"
COBCPY=$TUXDIR/cobinclude
COBOPT="-C ANS85 -C ALIGN=8 -C NOIBMCOMP -C TRUNC=ANSI -C OSEXT=cbl"
export COBOPT COBCPY ALTCC ALTCFLAGS
buildclient -C -w -o empclient -f name.cbl -f "userlib1.a userlib2.a"

-o オプションは、出力ファイルに名前を指定する場合に使用します。-f オプションが指定された入力ファイルは、システム・ライブラリの前にリンクされます。

上記のコード例に示してあるように、TUXDIR 環境変数を使用して、buildclient コマンドがシステム・ライブラリの場所を認識できるようにします。TUXDIR は必ず指定してください。CC 環境変数には、デフォルトで cc が設定されます。ただし、ALTCC を使用して、別のコンパイラを設定することもできます。

環境変数を設定する

ワークステーション・クライアントでは、いくつかの環境変数を使用します。

次の表は、ワークステーション・クライアントがアプリケーションに参加する場合に、TPINITIALIZE で確認される環境変数です。

表 12-1 UNIX プラットフォーム上の TPINITIALIZE で確認される環境変数

環境変数

機能説明

WSENVFILE

クライアントの環境で使用される環境変数が定義されたファイルの名前。

WSNADDR

クライアントがアプリケーションにアクセスするためのワークステーション・リスナ・プロセスのネットワーク・アドレス。ワークステーション・リスナを呼び出すには、アプリケーションのコンフィギュレーション・ファイルに指定されている値を使用してください。「0x」で始まる値は 16 進値を表す文字列と見なされ、それ以外の値は、ASCII 文字列と見なされます。

WSDEVICE

ネットワークにアクセスするために使用されるデバイスの名前。すべてのトランスポート層インターフェイスで必要なわけではありません。

WSTYPE

ワークステーションの種類。ワークステーション・クライアントが TPINITIALIZE を呼び出して、ネイティブ・サイトと符号化/復号化処理に関して調整する場合に、TPINITIALIZE で使用されます。WSTYPE が指定されていないと、ネイティブ・サイトでも WSTYPE が指定されていない場合でも、符号化が行われます。ネイティブ・サイトとワークステーション・クライアント・サイトの両方で明示的に同じ WSTYPE 値を指定して、符号化/復号化機能が必ず無効になるようにします。

WSRPLYMAX

アプリケーション応答をディスクにダンプする前にバッファに格納するために、ATMI で使用されるコア・メモリの最大サイズ。TPINITIALIZE で使用されます。デフォルトでは、システムの上限値は 256,000 バイトです。WSRPLYMAX に低い値を設定するかどうかは、使用しているマシンで利用可能なメモリ容量で判断します。応答をディスクに書き込むと、パフォーマンスが大幅に低下します。

WSFADDR

ワークステーション・クライアントがワークステーション・リスナまたはワークステーション・ハンドラに接続するのに使用するネットワーク・アドレス。この変数は、WSFRANGE 変数とともに、ワークステーション・クライアントがアウトバウンド接続を行う前にバインドしようとする TCP/IP ポートの範囲を決定します。このアドレスには、TCP/IP アドレスを指定する必要があります。

WSFRANGE

ワークステーション・クライアントのプロセスが、アウトバウンド接続を確立する前にバインドする TCP/IP ポートの範囲。範囲のベースとなるアドレスは、WSFADDR パラメータで指定します。デフォルト値は 1 です。

使用されている BEA Tuxedo システムのコンポーネントによっては、UNIX ワークステーション上の Workstation COBOL クライアントでほかの環境変数が必要になる場合もあります。

注記 MicroFocus では、共用オブジェクトとして LIBNSL.a が提供されています。このオブジェクトは、ワークステーション・クライアントのリンク時に buildclient で必要になります。MicroFocus COBOL では、UNIX 3.2 上で共用オブジェクトがサポートされていません。そのため、UNIX 3.2 版 Workstation はサポートされていません。

 


Microsoft Windows のバインディング

以下に、COBOL 言語を使用して Microsoft Windows プラットフォーム上で BEA Tuxedo アプリケーションを開発する場合に、クライアント・プログラムを作成してビルドする方法、ACCEPT/DISPLAY クライアントをビルドする方法、ネットワークの動作をブロックする方法、そしてネットワーク環境を復元する方法について説明します。

クライアント・プログラムの作成

プログラム固有のすべての ATMI 呼び出しを使用することができます。

クライアント・プログラムのビルド

ATMI を呼び出す COBOL のソース・コードをコンパイルするには、LITLINK オプションを指定して、COBOL コンパイラを使用する必要があります。ワークステーション・クライアントのオブジェクト・ファイルをリンクするには、buildclient(1) コマンドを使用します。コマンドの構文はわかりやすいものですが、その使い方は使用しているコンパイラによって異なります。

次のコード例は、buildclient コマンドの使用方法を示しています。

コード リスト 12-2 Windows プラットフォームでの buildclient の実行

COBCPY=C:¥TUXEDO¥COBINC
COBDIR=C:¥COBOL¥LBR;C:¥COBOL¥EXEDLL
PATH=C:¥COBOL¥EXEDLL;...
TUXDIR=C:¥tuxedo
LIB=C:¥NET¥TOOLKIT¥LIB;C:¥MSVC¥LIB;C:¥TUXEDO¥LIB;C:¥COBOL¥LIB
buildclient -C -o EMP.EXE -f EMP -f "/NOD/NOI/NOE/CO/SE:300" -l WLIBSOCK
For Windows NT:
buildclient -C -o EMP.EXE  -f empobj 

次の表は、前述のコード例で使用されている buildclient コマンドのオプションを示しています。

表 12-2 Windows プラットフォーム用 buildclient コマンドのオプション

オプション

機能説明

-o name

作成している実行ファイルの名前。デフォルトは client.exe です。

-f firstfiles

BEA Tuxedo ライブラリの前にインクルードされる 1 つ以上のオブジェクト・ファイル。-f を使用して、コンパイラまたはリンカにオプションを渡すことができます。複数のファイル名を指定するには、-f の後に各ファイル名を入力します。その場合、各ファイル名はスペースで区切り、そのファイル・リストをまとめて二重引用符で囲みます。または、コマンド行に -f オプションを複数回指定して、複数のファイル名を指定することもできます。

-l libfiles

BEA Tuxedo ライブラリの後にインクルードされるライブラリ。複数のファイル名を指定するには、各ファイル名を入力します。その場合、各ファイル名はスペースで区切り、そのファイル・リストをまとめて二重引用符で囲みます。または、コマンド行に -l オプションを複数回指定して、複数のファイル名を指定することもできます。

ACCEPT/DISPLAY クライアントのビルド

次のコード例は、CSIMPAPP などの ACCEPT/DISPLAY アプリケーションに対する実行可能クライアントをビルドする方法を示しています。

コード リスト 12-3 ACCEPT/DISPLAY クライアントのビルド

a) compile the COBOL module and create a file.obj
cobol file.cbl omf(obj) litlink;
b) use the following link statement
link FILE+cblwinaf,,,¥
wcobatmi+cobws+wtuxws+ ¥
lcobol+lcoboldw+cobw+cobfp87w+ ¥
wlibsock,FILE.def /nod/noe;
For Windows NT the link statement is:
cbllink -oEMP.exe EMP.obj ¥
cobws.lib ncobatmi.lib wtuxws32.lib ¥
libcmt.lib user32.lib

 

Back to Top Previous Next
Contact e-docsContact BEAwebmasterprivacy