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

Tuxedo のファイル形式とデータ記述方法

 Previous Next Contents View as PDF  

UBBCONFIG(5) に関する追加情報

ファイル

MASTER マシン上で TUXCONFIG コンフィギュレーション・ファイルを検索するには、環境変数 TUXCONFIG および TUXOFFSET を使用します。

使用例

# 次は、2 種類のマシン・タイプがある
# 2 サイトを含むコンフィギュレーション・ファイルの例です。データ依存型ルーティング
# が使用されます。
*RESOURCES
IPCKEY 80952 # 既知のアドレスのキー
DOMAINID My_Domain_Name
UID 4196 # IPC 構造体のユーザ ID
GID 601 # IPC 構造体のグループ ID
PERM 0660 # IPC アクセスのパーミッション
MAXSERVERS 20 # 同時に処理できるサーバの数を 20 に設定
MAXSERVICES 40 # 提供するサービス数を 40 に設定
MAXGTT 20 # 同時に処理できるグロ―バル・トランザクション数を 20 に設定
MASTER SITE1
SCANUNIT 10
SANITYSCAN 12
BBLQUERY 180
BLOCKTIME 30
NOTIFY DIPIN
OPTIONS LAN,MIGRATE
SECURITY USER_AUTH
AUTHSVC AUTHSVC



MP # 掲示板に基づくマルチプロセッサ
LDBAL Y # ロード・バランシングを実行
#
*MACHINES
mach1 LMID=SITE1 TUXDIR="/usr4/tuxbin"
MAXACCESSERS=25
APPDIR="/usr2/apps/bank"
ENVFILE="/usr2/apps/bank/ENVFILE"
TLOGDEVICE="/usr2/apps/bank/TLOG" TLOGNAME=TLOG
TUXCONFIG="/usr2/apps/bank/tuxconfig" TYPE="3B2"
ULOGPFX="/usr2/apps/bank/ULOG"
SPINCOUNT=5
mach386 LMID=SITE2 TUXDIR="/usr5/tuxbin"
MAXACCESSERS=100
MAXWSCLIENTS=50
APPDIR="/usr4/apps/bank"
ENVFILE="/usr4/apps/bank/ENVFILE"
TLOGDEVICE="/usr4/apps/bank/TLOG" TLOGNAME=TLOG
TUXCONFIG="/usr4/apps/bank/tuxconfig" TYPE="386"
ULOGPFX="/usr4/apps/bank/ULOG"
#
*GROUPS

DEFAULT: TMSNAME=TMS_SQL TMSCOUNT=2
# Windows の場合、:bankdb: を ;bankdb; にする
BANKB1 LMID=SITE1 GRPNO=1
OPENINFO="TUXEDO/SQL:/usr2/apps/bank/bankdl1:bankdb:readwrite"
# Windows の場合、:bankdb: を ;bankdb; にする
BANKB2 LMID=SITE2 GRPNO=2
OPENINFO="TUXEDO/SQL:/usr4/apps/bank/bankdl2:bankdb:readwrite"
DEFAULT:
AUTHGRP LMID=SITE1 GRPNO=3
#
*NETWORK
SITE1 NADDR="mach1.80952" BRIDGE="/dev/starlan"
NLSADDR="mach1.serve"
#
SITE2 NADDR="mach386.80952" BRIDGE="/dev/starlan"
NLSADDR="mach386.serve"
*SERVERS
#
DEFAULT: RESTART=Y MAXGEN=5 REPLYQ=Y CLOPT="-A"

TLR SRVGRP=BANKB1 SRVID=1 RQADDR=tlr1
CLOPT="-A -- -T 100"
TLR SRVGRP=BANKB1 SRVID=2 RQADDR=tlr1
CLOPT="-A -- -T 200"
TLR SRVGRP=BANKB2 SRVID=3 RQADDR=tlr2
CLOPT="-A -- -T 600"
TLR SRVGRP=BANKB2 SRVID=4 RQADDR=tlr2
CLOPT="-A -- -T 700"
XFER SRVGRP=BANKB1 SRVID=5
XFER SRVGRP=BANKB2 SRVID=6
ACCT SRVGRP=BANKB1 SRVID=7
ACCT SRVGRP=BANKB2 SRVID=8
BAL SRVGRP=BANKB1 SRVID=9
BAL SRVGRP=BANKB2 SRVID=10
BTADD SRVGRP=BANKB1 SRVID=11
BTADD SRVGRP=BANKB2 SRVID=12
AUTHSVR SRVGRP=AUTHGRP SRVID=20 #
*SERVICES
DEFAULT: LOAD=50 AUTOTRAN=N
WITHDRAWAL PRIO=50 ROUTING=ACCOUNT_ID
DEPOSIT PRIO=50 ROUTING=ACCOUNT_ID
TRANSFER PRIO=50 ROUTING=ACCOUNT_ID
INQUIRY PRIO=50 ROUTING=ACCOUNT_ID
CLOSE_ACCT PRIO=40 ROUTING=ACCOUNT_ID
OPEN_ACCT PRIO=40 ROUTING=BRANCH_ID
BR_ADD      PRIO=20     ROUTING=BRANCH_ID
TLR_ADD PRIO=20 ROUTING=BRANCH_ID
ABAL PRIO=30 ROUTING=b_id
TBAL PRIO=30 ROUTING=b_id
ABAL_BID PRIO=30 ROUTING=b_id
TBAL_BID PRIO=30 ROUTING=b_id SVCTIMEOUT=300
#
#
*ROUTING
ACCOUNT_ID FIELD=ACCOUNT_ID BUFTYPE="FML"
RANGES="MIN - 9999:*,10000-59999:BANKB1,60000-109999:BANKB2,*:*"
BRANCH_ID FIELD=BRANCH_ID BUFTYPE="FML"
RANGES="MIN - 0:*,1-5:BANKB1,6-10:BANKB2,*:*"
b_id FIELD=b_id BUFTYPE="VIEW:aud"
RANGES="MIN - 0:*,1-5:BANKB1,6-10:BANKB2,*:*"

相互運用性

相互運用するアプリケーションでは、マスタ側で最新のリリースが動作していなければなりません。異なるリリースの BEA Tuxedo システム間で相互運用する場合、PMID (マシン ADDRESS)、LMIDTLOGNAME、グループ名、RQADDR、サービス名、および ROUTING (ルーティング基準名) の各パラメータ値は、有効な C 言語識別子 (UBBCONFIG キーワードではない) でなければなりません。

ネットワーク・アドレス

BRIDGE を実行しているローカル・マシンが TCP/IP アドレス指定機能を使用していて、そのアドレスは 155.2.193.18 であり、名前は backus.company.com であるとします。また、BRIDGE が要求を受け取るポート番号は 2334 だとします。このポート番号 2334 は、bankapp-naddr という名前のネットワーク・サービス・データベースに追加されているとします。この場合、アドレスは次のように表現されます。

//155.2.193.18:bankapp-naddr//155.2.193.18:2334
//backus.company.com:bankapp-naddr
//backus.company.com:2334
0x0002091E9B02C112

最後の表現は 16 進形式です。0002 は TCP/IP アドレスの先頭部分、091E は 16 進数に変換されたポート番号 2334 です。その後、IP アドレス 155.2.193.1 の各要素は 16 進数に変換されています。つまり、1559B202 というようになります。

関連項目

buildserver(1)tmadmin(1)tmboot(1)tmloadcf(1)tmshutdown(1), tmunloadcf(1)buffer(3c)tpinit(3c)servopts(5)

『BEA Tuxedo アプリケーションの設定』

『BEA Tuxedo アプリケーション実行時の管理』

『C 言語を使用した BEA Tuxedo アプリケーションのプログラミング』

 


viewfile(5)

名前

viewfile-VIEW 記述用のソース・ファイル

機能説明

VIEW ファイルは、1 つまたは複数の C データ構造体 (VIEW) の記述用ソース・ファイルです。viewc() コマンドへの入力として使用される場合、VIEW ファイルはバイナリ・ファイル (ファイル名 view_filename.V) とヘッダ・ファイル (view_filename.h) の基礎となります (viewc、viewc32(1) を参照)。

BEA Tuxedo システムでは、バイナリ .V ファイルは次の 2 とおりの方法で使用されます。

構造体のメンバがその論理名によって参照できるように、VIEW を使用するすべてのプログラムに .h ファイルをインクルードする必要があります。

VIEW 記述

ソース viewfile の各 VIEW 記述は、次の 3 つの部分から構成されます。

各 VIEW 記述の先頭行は、キーワード "VIEW" で始まり、後ろに VIEW 記述の名前が続かなければなりません。メンバ記述 (またはマッピング・エントリ) は、C 構造体のメンバに関する情報が含まれている行です。。キーワード "END" で始まる行は、VIEW 記述の最後の行です。また、シャープ (#) で始まる行はコメントとして扱われ、無視されます。

したがって、ソース VIEW 記述は、一般に次のような構造になっています。

VIEW vname 
# type cname fbname count flag size null
# ---- ----- ------ ----- ---- ---- ----
--------------メンバの記述-------------------

.
.
END

記述の変数フィールドには以下のような意味があります。

vname

VIEW 記述の名前。これは C 構造体の名前としても使用されるため、有効な C 識別子を指定します。

type

メンバの型。int、short、long、char、float、double、string、carray、または dec_t のいずれかを指定します。‘-’ を指定すると、VIEW が FML バッファにマップされる場合、メンバの型にはデフォルトで fbname 型が設定されます。

cname

構造体メンバの識別子。これは C 構造体メンバの名前であるため、有効な C 識別子名を指定します。VIEW が FML バッファにマップされない場合、これは有効な fbname ではありません。

fbname

フィールド化バッファのフィールドの名前。この名前には、フィールド・テーブル・ファイルまたはフィールド・ヘッダ・ファイルのいずれかにある名前を指定します。FML バッファにマップしない VIEW の場合、このフィールドは無視されますが、ダッシュ (-) などのプレースホルダ値を含んでいる必要があります。

count

割り当てる要素の数、つまりこのメンバに格納されるオカレンスの最大数を示します。65,535 以下の値を指定します。

flag

カンマで区切ったオプションのリスト。ダッシュ (-) は、オプションが設定されていないことを示します。flag オプションについては後述します。FML バッファにマップしない VIEW の場合、このフィールドには C または L オプション (あるいはその両方) を指定でき、またはプレース・ホルダ値のダッシュ ( ) を指定する必要があります。

size

型が string または carray の場合、メンバのサイズを示します。65,535 以下の値を指定します。32 ビット FML の場合、最大サイズは 2 の 32 乗です。dec_t 型の場合、size は 2 つの数値をカンマで区切ります。1 つ目の数値は 10 進数値のバイト数 (0 より大きく 10 未満) で、2 つ目の数値は小数点の右側の桁数です (0 より大きく、バイト数の 2 倍から 1 を引いた値未満)。その他のフィールド・タイプの場合、ダッシュ (-) を指定すると VIEW コンパイラがサイズを計算します。

null

ユーザ指定の NULL 値。ダッシュ (-) を指定すると、該当するフィールドのデフォルトのヌル値が設定されます。ヌル値については後述します。

フラグ・オプション

以下に、VIEW 記述内のメンバ記述の flag 要素として指定できるオプションのリストを示します。L および C オプションは、FML ベースではない VIEW 用にも構造体メンバを追加生成します。

C

このオプションは、メンバ記述で記述されている構造体メンバに加えて、関連するカウント・メンバ (ACM) と呼ばれる付加的な構造体メンバが生成されることを示します (FML ベースではない VIEW も同様)。データをフィールド化バッファから構造体に転送する場合は、その構造体内の各 ACM を、関連付けられている構造体メンバに転送されるオカレンスの数に設定します。ACM の値 0 は、対応する構造体メンバにフィールドが転送されなかったことを示します。正の値は、構造体メンバの配列に実際に転送されたフィールドの数を示します。負の値は、構造体メンバの配列に転送できる以上のフィールドがバッファ内にあったことを示します (ACM の絶対値は、構造体に転送されなかったフィールドの数と同等です)。構造体メンバの配列からフィールド化バッファへのデータ転送時には、ACM を使用して転送すべき配列要素の数を指定します。たとえば、あるメンバの ACM が N に設定されている場合は、最初の N のヌルではないフィールドがフィールド化バッファに転送されます。N が配列のサイズより大きい場合、N はデフォルトで配列のサイズに設定されます。どちらの場合も、転送後、ACM はフィールド化バッファに転送される配列のメンバの実際の数に設定されます。ACM の型は short (VIEW32 の場合は 32 ビット long) として宣言され、その名前は "C_cname" という形式で生成されます。ここで cname は、ACM が宣言されている cname エントリです。たとえば、parts という名前のメンバの ACM は、次のように宣言されます。

short C_parts;

生成された ACM 名が、先頭に 接頭辞 "C_" が付いている構造体メンバと矛盾する場合もあります。そのような矛盾は VIEW コンパイラにより報告され、これを VIEW コンパイラは致命的なエラーとみなします。たとえば、構造体のメンバの名前が "C_parts" である場合、これは、メンバ "parts" のために生成された ACM の名前と矛盾します。また、-r コマンド行オプションを指定すると、VIEW コンパイラはACM メンバと ALM (後述の L オプション参照) メンバの構造化レコード定義を生成します。

F

構造体からフィールド化バッファへの一方向のマッピングを指定します。このオプションによるメンバのマッピングは、構造体からフィールド化バッファへのデータ転送時のみ有効です。

L

このオプションは、carray 型または string 型のメンバ記述に対してのみ使用され、これらの可変長フィールドに対して転送されたバイト数を示します。string フィールドまたは carray フィールドが常に固定長データ項目として使用される場合、このオプションを使用するメリットはありません。L オプションを指定すると、carray または string 型の構造体メンバに関連する長さメンバ (ALM) が生成されます (FML ベースではない VIEW も同様)。フィールド化バッファから構造体にデータを転送する場合、ALM は対応する転送されたフィールドの長さに設定されます。フィールド化バッファのフィールドの長さがマップされた構造体メンバで割り当てられた領域を超える場合、割り当てられたバイト数しか転送されません。対応する ALM は、フィールド化バッファ項目のサイズに設定されます。このため、ALM が構造体メンバの配列の大きさを超えた場合、フィールド化バッファ情報は転送時に切り捨てられます。構造体メンバからフィールド化バッファのフィールドにデータを転送する場合、そのフィールドが carry 型であれば、ALM を使用してフィールド化バッファに転送するバイト数を示します。string 型のフィールドの場合、ALM は転送時には無視されますが、後で転送されたバイト数に設定されます。carry フィールドの長さはゼロであることもあるため、ALM が 0 である場合、関連する構造体メンバの値がヌル値でなければ、フィールド化バッファに長さゼロのフィールドが転送されることを示します。ALM は unsigned short (VIEW32 の場合は32 ビット unsigned long) として定義され、"L_cname" という名前が付けられます。ここで cnameALM が宣言される構造体の名前です。宣言する ALM に対応するメンバのオカレンス数が 1 である場合、またはデフォルト値が 1 に設定されている場合、ALM は次のように宣言します。

unsigned short L_cname;

一方、オカレンス数が 1 より大きい場合 (N)、ALM は次のように宣言されます。

unsigned short L_cname[N];

これは ALM 配列として参照されます。このような場合は、ALM 配列内の各要素は構造体メンバ (またはフィールド) の対応するオカレンスを参照します。生成された ALM 名と先頭に "L_" 接頭辞が付いている構造体メンバが矛盾する場合もあります。そのような矛盾は VIEW コンパイラにより報告され、これを VIEW コンパイラは致命的なエラーとみなします。たとえば、構造体のメンバの名前が "L_parts" である場合、これは、メンバ "parts" のために生成された ALM の名前と矛盾します。また、-r コマンド行オプションを指定すると、VIEW コンパイラは ACM および ALM (前述の C オプションを参照) メンバの構造化レコード定義を生成します。

N

ゼロ方向マッピングを指定します。つまり C 構造体にフィールド化バッファはマップされません。このオプションでは、FML ベースでない VIEW では無視されます。これは、C 構造体に充填文字を割り当てるときに使用することができます。

P

このオプションは、string および carry 型の構造体メンバのヌル値として解釈される値を決定するために使用します。このオプションは、FML ベースでない VIEW では無視されます。このオプションを指定しない場合、構造体メンバの値がユーザ指定のヌル値と等しいと (後続のヌル文字は考慮しない)、構造体メンバがヌルになります。一方、このオプションを指定した場合は、ユーザ指定のヌル値と構造体メンバの値が等しく、さらに最後の文字が完全な長さまで及んでいると (後続のヌル文字は考慮しない)、構造体メンバがヌルになります。値がヌルであるメンバは、データが C 構造体からフィールド化バッファに転送されても宛先バッファに転送されません。たとえば、構造体メンバ TEST の型が carry[25] で、ユーザ指定のヌル値 "abcde" が指定されているとします。P オプションが設定されていない場合、最初の 5 文字が a、b、c、d、e であれば TEST はヌルと見なされます。P オプションが設定されている場合、最初の 4 文字 a、b、c、d で、この文字配列の残りの文字の中に 'e' (21 個の e) があれば TEST はヌルとなります。

S

フィールド化バッファから構造体への一方向のマッピングを指定します。このオプションは、FML ベースでない VIEW では無視されます。このオプションを指定したメンバのマッピングは、フィールド化バッファから構造体へのデータ転送時のみ有効です。

ヌル値

ヌル値は、C 構造体のメンバが空であることを示すために使用されます。デフォルトのヌル値が指定されていますが、独自のヌル値を定義することもできます。

デフォルトのヌル値は、数値型では 0 (dec_t の場合は 0.0)、char 型では "¥"、string および carry 型では "" です。

ヌル値を指定するためにエスケープ規則定数を使用することもできます。VIEW コンパイラが認識するエスケープ定数は、ddd (d は8 進数)、0、n、t、v、b、r、f、 、'、および " です。

string、carray、および char 型のヌル値は、二重引用符または一重引用符で囲まれている場合があります。VIEW コンパイラは、ユーザ定義のヌル値の内部のエスケープされていない引用符は受け付けません。

要素は、値がその要素の NULL 値と同じであれば NULL になりますが、以下の例外があります。

VIEW 記述のヌル・フィールドにキーワード "NONE" を指定することもできます。これは、そのメンバに対するヌル値がないことを意味します。

文字列および文字配列のメンバのデフォルトの最大サイズは 2,660 文字です。

文字列メンバの場合、通常 "0" で終了するため、ユーザ定義のヌル値の最後の文字として "0" は必要ありません。

環境変数

VIEWFILES

アプリケーションのオブジェクト VIEW ファイルのカンマ区切りのリストを指定します。絶対パス名で指定したファイルはそのまま使用され、相対パス名で指定したファイルは VIEWDIR 変数 (下記参照) で指定したディレクトリのリストから検索されます。

VIEWDIR

オブジェクト・ファイルが存在する可能性のあるディレクトリのコロン区切りのリストを指定します。VIEWDIR を設定しない場合、この値はカレント・ディレクトリとなります。

VIEW32 では、環境変数 VIEWFILES32VIEWDIR32 が使用されます。

使用例

# FML ベースの VIEW ファイルの開始 
VIEW custdb
$/* コメント行 */
#
#type cname fbname count flag size null
#
carray bug BUG_CURS 4 - 12 "no bugs"
long custid CUSTID 2 - - -1
short super SUPER_NUM 1 - - 999
long youid ID 1 - - -1
float tape TAPE_SENT 1 - - -.001
char ch CHR 1 - - "0"
string action ACTION 4 - 20 "no action"
END
# 非依存 VIEW ファイルの開始
VIEW viewx
$ /* viewx 情報のための VIEW 構造体 */
#
#type cname fbname count flag size null
#
int in - 1 - - -
short sh - 2 - - -
long lo - 3 - - -
char ch - 1 - - -
float fl - 1 - - -
double db - 1 - - -
string st - 1 - 15 -
carray ca - 1 - 15 -
END

関連項目

viewc、viewc32(1), tpalloc(3c), Fvftos、Fvftos32(3fml), Fvstof、Fvstof32(3fml)

『FML を使用した BEA Tuxedo アプリケーションのプログラミング』

 


WS_MIB(5)

名前

WS_MIB-ワークステーションの管理情報ベース

形式

#include <fml32.h>
#include <tpadm.h>

機能説明

BEA Tuxedo システムの MIB は、ワークステーション・グループ (1 つの WSL とそれに関連した WSH プロセス) を管理するためのクラスのセットを定義します。

管理要求のフォーマットと管理応答の解釈を行うには、WS_MIB(5) を共通 MIB リファレンス・ページ MIB(5) と一緒に使用します。このリファレンス・ページで説明するクラスや属性を使用し、MIB(5) の説明に従ってフォーマットした要求を使用すると、アクティブなアプリケーションの既存の ATMI インターフェイスの 1 つを通じて管理サービスを要求できます。WS_MIB(5) のすべてのクラス定義の追加情報については、WS_MIB(5) に関する追加情報を参照してください。

WS_MIB(5) は、次のクラスで構成されています。

表 65 WS_MIB のクラス

クラス名

属性

T_WSH

ワークステーション・ハンドラ

T_WSL

ワークステーション・リスナ


 

各クラスの説明セクションには、次の 4 つのサブセクションがあります。

概要

このクラスに関連付けられている属性の概要

属性表

クラスの各属性に関する名前、タイプ、パーミション、値、およびデフォルト値を示す表。属性表の形式については以下に示してあります。

属性の意味

各属性の意味の説明

制限事項

このクラスにアクセスし、このクラスを解釈する場合の制限事項

属性表の形式

前述のように、この MIB に含まれる各クラスは、4 つの部分に分けて以下に定義されています。その 1 つが属性表です。属性表はクラス内の属性のリファレンス・ガイドであり、管理者、オペレータ、一般ユーザがそれらの属性を使用してアプリケーションと対話するための方法を説明しています。属性表の各属性の説明には、5 つの構成要素 (名前、タイプ、パーミッション、値、デフォルト) があります。各要素については、MIB(5)を参照してください。

TA_FLAGS 値

MIB(5) は、共通 TA_FLAGS 属性を定義します。この属性は long 値フィールドで、共通 MIB フラグ値とコンポーネント MIB 固有フラグ値の両方を持ちます。現時点では、WS_MIB(5) 固有のフラグ値は定義されていません。

FML32 フィールド・テーブル

このリファレンス・ページで説明する属性のフィールド・テーブルは、システムにインストールした BEA Tuxedo システム・ソフトウェアのルート・ディレクトリからの相対パスで指定される udataobj/tpadm ファイルにあります。${TUXDIR}/udataobj ディレクトリは、FLDTBLDIR 環境変数で指定されるコロン区切りのリストにアプリケーションによって追加される必要があり、フィールド・テーブル名 tpadm() は、FIELDTBLS 環境変数で指定されるカンマ区切りのリストに追加される必要があります。

制限事項

この MIB のヘッダ・ファイルとフィールド・テーブルには、BEA Tuxedo システム 6.0 以降が実行されているサイト (ネイティブとワークステーションの両方) からのみアクセスできます。

 

Back to Top Previous Next
Contact e-docsContact BEAwebmasterprivacy