BEA Logo BEA Tuxedo Release 8.0

  BEA ホーム  |  イベント  |  ソリューション  |  パートナ  |  製品  |  サービス  |  ダウンロード  |  ディベロッパ・センタ  |  WebSUPPORT

 

   Tuxedo ホーム   |   BEA Tuxedo コマンド・リファレンス   |   先頭へ   |   前へ   |   次へ   |   目次

 


ud(1)、wud(1)

名前

ud、wud- BEA Tuxedo ATMI ドライバ・プログラム

形式

ud [-p] [-ddelay] [-eerror_limit] [-r] [-ssleeptime] [-ttimeout]
[-n] [-u {n | u | j}] [-U
usrname] [-Ccltname] [-Sbuffersize]
ud32 [
options]
wud [
options]
wud32 [
options]

機能説明

ud は、Fextread() を使用して標準入力から入力パケットを読み取ります。詳細については、Fextread、Fextread32(3fml) を参照してください。このパケットには、サービス名を識別するフィールドが含まれていなければなりません。入力パケットは、FML フィールド化バッファ (FBFR) に送られてから該当サービスに送られます。FBFR を受け取ったサービスがレコードをデータベースに追加するものであると、ud は大量のフィールド化データを BEA Tuxedo ATMI システムが認識しているデータベースに入力するために使用できます。

入力パケットの行の先頭を示すフラグ (入力形式を参照) を使用することによって、ud を BEA Tuxedo ATMI サービスのテストに利用できます。

デフォルトの設定では、FBFR をサービスに送った後、ud は FBFR が返されることを期待します。送信および応答 FBFR は ud の標準出力に出されます。エラー・メッセージは標準エラー出力に返されます。

ud32 は、FBFR32 タイプの FML32 バッファを使用します。

wud および wud32 はワークステーション・ライブラリを利用して構築されたバージョンの ud と ud32 です。wud /WS だけをサポートしているサイトでは、wud および wud32 コマンドだけが提供されています。

オプション

ud は次のようなオプションをサポートしています。

-p

送信または返却されたフィールド化バッファの表示を行いません。

-d

各要求の遅延応答を期待します。delay は、タイムアウトまでの最大遅延時間を秒単位で指定します。タイムアウトになると、stderr にエラー・メッセージが出されます。ud が指定された遅延時間内に以前の要求に対する応答メッセージを受け取った場合には、それらのメッセージは遅延 RTN パケットとして示されます。このため、遅延時間内に複数の応答パケットを受け取ることも可能です。wud 用の -d オプションは、DOS オペレーティング・システム上では動作しません。

-e error_limit

エラー回数が、error_limit で指定されている制限回数を上回ると、ud は、要求に対する処理を停止します。制限が指定されない場合のデフォルト設定は 25 です。

-r

ud は、サーバからの応答メッセージを期待しません。

-s sleeptime

入力バッファの送信と送信の間、スリープ状態になります。sleeptime はスリープ時間 (秒単位) です。

-t timeout

ud は、トランザクション・モードで要求を送ります。timeout は、トランザクションがタイムアウトするまでの時間 (秒) です。オプション -d delay と -r (応答なし) は、-t オプションと一緒に使用することはできません。

-u {n | u | j}

新しいパケットを読み取る前に要求バッファの内容を修正する方法を指定します。n オプションは、バッファを初期化しなおすことを表します (新しいバッファとして扱う)。u オプションは、Fupdate() を使用してバッファを応答バッファで更新することを指定します。j オプションは、Fojoin() を使用して応答バッファを要求バッファに結合することを指定します。詳細については、Fupdate、Fupdate32(3fml) と Fojoin、Fojoin32(3fml) を参照してください。

-n

各パケットを読み取る前にバッファを初期化しなおします (すなわち、各バッファを新しいバッファとして扱います)。このオプションは -un と同等の働きをしますが、互換性を維持する目的で用意されています。

-U usrname

usrnameは、アプリケーションを結合するときのユーザ名として使用します。

-S buffersize

デフォルトのバッファサイズが十分に大きくない場合、この -S オプションはその容量を拡大するのに使用できます。buffersize の値には、MAXLONG までの任意の数字を指定できます。

オプション -d delay と -r は相互に排他的です。

入力形式

入力パケットは下記のような形式の行で構成されます。

[flag]fldname fldval

flag は省略可能です。flag を指定しなかった場合には、fldname で指定され、値 fldval をもつフィールドの新しいオカレンスがフィールド化バッファに追加されます。flag を指定する場合には、次のいずれかとします。

+

FBFR 内の fldname のオカレンス 0 を fldval に変更します。

-

fldname のオカレンス 0 を FBFR から削除します。タブ文字は必須で、fldval は無視されます。

=

fldname の値が変更されます。この場合、fldval はフィールド名を指定し、その値が fldname で指定されるフィールドに割り当てられます。

#

この行はコメントとして扱われ、無視されます。

fldname がリテラル値 SRVCNM であると、fldval は FBFR を受け取るサービスの名前となります。

長いフィールド値は、継続行の先頭にタブを挿入することにより、次の行にまたがって入力できます。

改行文字だけで構成される行は入力の終わりを示し、そのパケットを ud に送ります。

入力パケットが文字 n と改行文字で構成される行で始まる場合、FBFR は初期化しなおされます。FBFR の再初期化は、コマンド行に -un オプションを使用することですべてのパケットに指定することができます。

表示不能文字を入力パケットに入力するには、エスケープ文字の後に目的の文字を表す 16 進表現を入力します。詳細については、UNIX リファレンス・マニュアルの ascii(5) を参照してください。シェルからエスケープ文字を保護するには、追加のバックスラッシュが必要です。たとえば、スペースは \20 と入力データに入力できます。ud はこの形式の全入力を認識しますが、その最大の利点は非表示文字を入力する際です。

処理モデル

当初、ud はフィールド化バッファをその標準入力から読み取って、fldname が SRVCNM である行の fldval によって名前が与えられているサービスにその入力を送ります。-r オプションが選択されていないかぎり、ud は応答フィールド化バッファが送られるまで待機します。応答が得られると、ud は次のフィールド化バッファを標準入力から読み取ります。ud は、このようにするために、返されるバッファを現在のバッファとして保持します。つまり、2 番目のフィールド化バッファを形成する標準入力上の行が、返されたバッファへの追加情報として扱われます。つまり、デフォルトのアクションでは、ud は一連の入力行によってその内容が追加される現在のバッファを維持します。これらの入力行は、空白行で区切られます。コマンド行で -un オプションを指定するか、あるいは入力セットの先頭行として英字 n を唯一の文字とする行を含めることにより、ud に現在のバッファを廃棄する (つまり、その FBFR 構造を初期化しなおす) よう指示できます。また、-uu オプション (Fupdate を使用) あるいは -uj オプション (Fojoin を使用) を指定することにより、ud に応答バッファの内容を要求バッファにマージさせることができます。

セキュリティ

ud を保護アプリケーションで実行する場合、そのアプリケーションを利用するためにはアプリケーション・パスワードが必要です。標準入力が端末である場合、ud はユーザにパスワードの入力を求めてきます。このとき、ユーザが入力パスワードは画面には表示されません。ただし、ud は標準入力からの一括入力を受け付けるので、標準入力は一般的に端末ではなくファイルとなっています。このケースでは、パスワードは環境変数 APP_PW から取り出されます。この環境変数が指定されていないときに、アプリケーション・パスワードが必要であると、ud は異常終了します。

移植性

これらのコマンドは、BEA Tuxedo ATMI サーバ環境がサポートされるプラットホームで実行できます。

環境変数

FLDTBLDIR および FIELDTBLS を設定してエクスポートする必要があります。FLDTBLDIR のディレクトリのリストには、$TUXDIR/udataobj が含まれていなければなりません。FIELDTBLS には、フィールド・テーブルの 1 つとして Usysflds が含まれていなければなりません。

標準入力が端末でない場合、保護アプリケーションでは APP_PW をアプリケーション・パスワードに設定しなければなりません。TPIDATA は、標準入力が端末でない場合、認証サーバで保護アプリケーションにアプリケーションを結合するのに必要なそのアプリケーション特定のデータに設定しなければなりません。

また、ワークステーションからアクセスする場合には、WSNADDR、WSDEVICE および WSTYPE (省略可) を設定しなければなりません。クライアント・プロセス用に環境変数を設定する方法についての詳細は、compilation(5) を参照してください。

診断

ud は、クライアント・プロセスになれないとき、必要な FBFR を作成できないとき、あるいは UNIX システムのエラーを検出したときには異常終了します。また、入力パケットのストリーム処理時に 25 個を超えるエラーを検出すると異常終了します。これらのエラーとしては、構文エラー、サービス名の欠落、トランザクションの開始またはコミットのエラー、入力 FBFR 送信時あるいは応答 FBFR 受信時のタイムアウトまたはエラーなどがあります。

注意事項

入力フィールドの最後のフィールド化バッファは空白行で終えてください。

使用例

$ud <EOF>
SRVCNM BUY
CLIENT J. Jones
ADDR 21 Valley Road
STOCK AAA
SHARES 100
<CR>
+SRVCNM SELL
+STOCK XXX
+SHARES 300
STOCK YYY
SHARES 150
<CR>
n
SRVCNM BUY
CLIENT T. Smith
ADDR 1 Main Street
STOCK BBB
SHARES 175
<CR>
+SRVCNM SELL
+STOCK ZZZ
+SHARES 100
<CR>
EOF
$

この例で、ud はまず、フィールド化バッファをサービス BUY に送り、CLIENT フィールドを J. Jones に、ADDR フィールドを 21 Valley Road に、STOCK フィールドを AAA に、そして SHARES フィールドを 100 に設定します。

フィールド化バッファが BUY サービスから返されると、ud は次の行セットを使用して SRVCNM を SELL に、STOCK を XXX に、そして SHARES を 300 に変更します。また、STOCK フィールドの追加オカレンスを値 YYY で、および SHARES フィールドの追加オカレンスを値 150 で作成します。このフィールド化バッファはこの後、SELL サービス (SRVCNM フィールドの新しい値) に送られます。

SELL が応答フィールド化バッファを返してくると、ud は次の行セットを唯一の文字 n で構成される行で開始することにより、そのバッファを廃棄します。ud は次いで、まったく新しい入力パケットを、SRVCNM を BUY に、CLIENT を値 T. Smith に設定して構築します。

関連項目

Fextread、Fextread32(3fml)、compilation(5)

UNIX System V リファレンス・マニュアルの ascii(5)、

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

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

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

 

先頭へ戻る 前のトピックへ 次のトピックへ