![]() ![]() ![]() ![]() |
この章で説明する手順を実行してみる前に、「PersonQuery サンプル アプリケーション」で解説した手順がすべて完了していることを確認してください。
InterceptorSimp サンプル インターセプタでは、インターセプタに渡された要求におけるオペレーションに RequestContext オブジェクトを介してアクセスする方法を示します。InterceptorSimp サンプルが要求をインターセプトすると、インターセプタは次の処理を行います。
インターセプタに対して正常な呼び出しが行われた場合、クライアント呼び出しはターゲット オブジェクトに渡されて通常の方法で処理されます。InterceptorSimp サンプル インターセプタでは、次のことが示されます。
InterceptorSimp サンプル インターセプタでは、定義および登録されるものの単一のソース ファイル内で実装される 2 種類のインターセプタも示されます。この例では、クライアント インターセプタとターゲット インターセプタは個別に登録されます。先に初期化されるのは、クライアント インターセプタです。
「PersonQuery サンプル アプリケーション」の PersonQuery サンプル アプリケーションをビルドする makefile を実行すると、InterceptorSimp インターセプタを含むサンプル インターセプタ一式全部が、同様にビルドされます。この節では、実行時に PersonQuery アプリケーションと共に機能するように InterceptorSimp インターセプタを登録する方法を説明します。
InterceptorSimp クライアント インターセプタおよびサーバ インターセプタを登録して実行するには、次の手順に従います。
workdirectory
は、「PersonQuery サンプル アプリケーション」に示す手順でインターセプタのサンプル アプリケーションをコピーしたディレクトリの名前を表します。> cd <workdirectory
>\cxx\simple_cxx
$ cd <workdirectory
>/cxx/simple_cxx
> nmake -f makefile.nt config
$ make -f makefile.mk config
> cd <workdirectory
>\cxx\app_cxx
> tmboot -y
> PersonQueryClient
> cd <workdirectory
>/cxx/app_cxx
> tmboot -y
> PersonQueryClient
> tmshutdown -y
単純なクライアント インターセプタからの出力は、次の構文で名前を付けられたファイルに入っています。
InterceptorSimpClientxxxx
.out
上述の構文の行で、xxxx
はインターセプタが実行された実行可能ファイルのプロセス ID を表します。たとえば、InterceptorSimpClient
xxx
.out
ファイルは以下のそれぞれについて 1 つずつ、全部で 3 つあります。
各ファイルの内容は、ORB と実行可能ファイルがどのようにやり取りしたかに応じて変わります。たとえば、ターゲット インターセプタはサーバ上で実行され、クライアント インターセプタはクライアント上で実行されるので、InterceptorSimpClient ログ ファイルに記録されるターゲット インターセプタからの出力は通常、非常に少ない一方で、クライアント インターセプタからの出力はより多くなっています。
InterceptorSimp サンプル インターセプタで PersonQuery サンプル アプリケーションを実行後に、次の手順によってこれらのインターセプタの登録を解除できます。
InterceptorSimp クライアント インターセプタおよびサーバ インターセプタの登録を解除するには、次の手順に従います。
workdirectory
は、「PersonQuery サンプル アプリケーション」に示す手順でインターセプタのサンプル アプリケーションをコピーしたディレクトリの名前を表します。> cd <workdirectory
>\cxx\simple_cxx
$ cd <workdirectory
>/cxx/simple_cxx
> nmake -f makefile.nt unconfig
$ make -f makefile.mk unconfig
![]() ![]() ![]() |