CORBAリクエスト・レベルのインターセプタの使用

     前  次    新規ウィンドウで目次を開く  新規ウィンドウで索引を開く  PDFとして表示 - 新規ウィンドウ  Adobe Readerを入手 - 新規ウィンドウ
コンテンツはここから始まります

InterceptorSimpサンプル・インターセプタ

このトピックには次の項が含まれます:

この章で説明する手順を実行してみる前に、「PersonQueryサンプル・アプリケーション」で解説した手順がすべて完了していることを確認してください。

 


PersonQueryサンプル・インターセプタのしくみ

InterceptorSimpサンプル・インターセプタでは、インターセプタに渡されたリクエストにおけるオペレーションにRequestContextオブジェクトを介してアクセスする方法を示します。InterceptorSimpサンプルがリクエストをインターセプトすると、インターセプタは次の処理を行います。

インターセプタに対して正常な呼出しが行われた場合、クライアント呼出しはターゲット・オブジェクトに渡されて通常の方法で処理されます。InterceptorSimpサンプル・インターセプタでは、次のことが示されます。

InterceptorSimpサンプル・インターセプタでは、定義および登録されるものの単一のソース・ファイル内で実装される2種類のインターセプタも示されます。この例では、クライアント・インターセプタとターゲット・インターセプタは個別に登録されます。先に初期化されるのは、クライアント・インターセプタです。

 


PersonQueryインターセプタの登録および実行

「PersonQueryサンプル・アプリケーション」のPersonQueryサンプル・アプリケーションをビルドするmakefileを実行すると、InterceptorSimpインターセプタを含むサンプル・インターセプタ一式全部が、同様にビルドされます。この項では、実行時にPersonQueryアプリケーションと共に機能するようにInterceptorSimpインターセプタを登録する方法を説明します。

InterceptorSimpクライアント・インターセプタおよびサーバー・インターセプタを登録して実行するには、次の手順に従います。

  1. InterceptorSimpサンプルのディレクトリに移動します。ここでworkdirectoryは、「PersonQueryサンプル・アプリケーション」に示す手順でインターセプタのサンプル・アプリケーションをコピーしたディレクトリの名前を表します。
  2. Windows 2003

    > cd <workdirectory>\cxx\simple_cxx

    UNIX

    $ cd <workdirectory>/cxx/simple_cxx
  3. インターセプタを登録します。
  4. Windows 2003

    > nmake -f makefile.nt config

    UNIX

    $ make -f makefile.mk config
  5. CORBAサーバーをブートしてクライアントを実行します。
  6. Windows 2003

    > cd <workdirectory>\cxx\app_cxx
    > tmboot -y
    > PersonQueryClient

    UNIX

    > cd <workdirectory>/cxx/app_cxx
    > tmboot -y
    > PersonQueryClient
  7. 「PersonQueryサンプル・アプリケーション」で説明したコマンド構文を使用して、PersonQueryクライアント・アプリケーションで呼出しを任意の回数行います。
  8. PersonQueryアプリケーションを停止します。
  9. > tmshutdown -y

 


インターセプタの出力の検証

単純なクライアント・インターセプタからの出力は、次の構文で名前を付けられたファイルに入っています。

InterceptorSimpClientxxxx.out

上述の構文の行で、xxxxはインターセプタが実行された実行可能ファイルのプロセスIDを表します。たとえば、InterceptorSimpClientxxx.outファイルは以下のそれぞれについて1つずつ、全部で3つあります。

各ファイルの内容は、ORBと実行可能ファイルがどのようにやり取りしたかに応じて変わります。たとえば、ターゲット・インターセプタはサーバー上で実行され、クライアント・インターセプタはクライアント上で実行されるので、InterceptorSimpClientログ・ファイルに記録されるターゲット・インターセプタからの出力は通常、非常に少ない一方で、クライアント・インターセプタからの出力はより多くなっています。

 


インターセプタの登録解除

InterceptorSimpサンプル・インターセプタでPersonQueryサンプル・アプリケーションを実行後に、次の手順によってこれらのインターセプタの登録を解除できます。

  1. 次のコマンドを入力して、実行中のCORBAアプリケーションをすべて停止します。
  2. > tmshutdown -y
  3. インターセプタの登録を解除します。

インターセプタの登録解除

InterceptorSimpクライアント・インターセプタおよびサーバー・インターセプタの登録を解除するには、次の手順に従います。

  1. InterceptorSimpサンプルのディレクトリに移動します。ここでworkdirectoryは、「PersonQueryサンプル・アプリケーション」に示す手順でインターセプタのサンプル・アプリケーションをコピーしたディレクトリの名前を表します。
  2. Windows 2003

    > cd <workdirectory>\cxx\simple_cxx

    UNIX

    $ cd <workdirectory>/cxx/simple_cxx
  3. インターセプタの登録を解除します。
  4. Windows 2003

    > nmake -f makefile.nt unconfig

    UNIX

    $ make -f makefile.mk unconfig

  先頭に戻る       前  次