.NETスマート・クライアントにより、Java APIとほぼ同等のクライアントを実現し、アプリケーションからコールします。.NETスマート・クライアントの現行の実装では、Javaスマート・クライアントが持つ高度な機能の一部(セッション・アフィニティ管理やデフォルトのレスポンス処理など)がサポートされていません。
.NETスマート・クライアントAPIの詳細は、Decision Studioのオンライン・ヘルプを参照してください。
この章の内容は次のとおりです。
.Net スマート・クライアントで作業を行う前に、次の作業を実行する必要があります。
Java Development Kit(JDK)をインストールし、JAVA_HOME
環境変数にそのインストール場所を設定します。JDKの入手方法の詳細は、Sun社のWebサイト(http://java.sun.com/products
)を参照してください。
Oracle RTDファイルをインストールし、Oracle RTDをアプリケーション・サーバーにデプロイします。詳細は、『Oracle Real-Time Decisionsインストレーションおよび管理ガイド』を参照してください。
.NETスマート・クライアントのサンプルは、サンプルのCrossSellインライン・サービスと連携して動作します。そのため、最初にOracle RTD DatabaseにCrossSellのサンプル・データを移入してから、Decision Studioを使用してCrossSellインライン・サービスをデプロイする必要があります。
Oracle RTD DatabaseにCrossSellのサンプル・データを移入する方法の詳細は、『Oracle Real-Time Decisionsインストレーションおよび管理ガイド』を参照してください。インライン・サービスのデプロイ方法の詳細は、第III部「Decision Studioリファレンス」を参照してください。
Real-Time Decision Serverを起動します。詳細は、『Oracle Real-Time Decisionsインストレーションおよび管理ガイド』を参照してください。
一般的な統合手順は次のとおりです。
Oracle RTDスマート・クライアントをアプリケーション・コード内に作成します。
インライン・サービスと統合点に対して送信するリクエストを作成します。
リクエストにおいて引数とセッション・キーを移入します。
スマート・クライアントを使用してリクエストを起動します。
リクエストがアドバイザに対して起動された場合、レスポンスを確認します。
終了したらスマート・クライアントをクローズします。
.NETスマート・クライアントは、RTD_HOME
\client\Client Examples\Dot Net Client Example\sdclient.dll
にあります。このファイルをアクセス可能にするには、アプリケーションと同じ場所に配置する必要があります。
.NET統合クライアントのサンプルは、RTD_HOME
\client\Client Examples\Dot Net Client Example\DotNetSmartClientExample.sln
にあります。このサンプルは、Microsoft Visual C# 2008 Express Editionを使用して開いて実行やデバッグができます。
このサンプルでは、インフォーマントとアドバイザの統合点がCrossSellインライン・サービスに対して起動されます。このインライン・サービスの理解を深めるには、第6.2項「CrossSellインライン・サービスについて」を参照してください。サンプルでは、統合点が起動され、アドバイザからの戻り値がコンソールに出力されます。
サンプルをMicrosoft Visual Studioで実行する手順は次のとおりです。
Microsoft Visual C# 2008 Express Editionを起動します。
メニュー・バーから、「File」→「Open」→「Project」を選択します。
「File Name」に「RTD_HOME
\client\Client Examples\Dot NET Client Example\DotNetSmartClientExample.sln
」を選択し、「Open」をクリックします。
Real-Time Decision Serverが実行しているホストまたはポートがデフォルトのlocalhost:8080
と異なる場合、次の手順を実行します。
右側の「Solution Explorer」ウィンドウで、DotNetSmartClientExample.csをダブルクリックします。
次の行を探します。
SDClient client = new SDClient("http://localhost:8080");
Real-Time Decision Serverが実行しているホストとポートに一致するようにlocalhost:8080
を変更します。
ファイルを保存して閉じます。
メニュー・バーから、「Debug」→「Start」を選択します。コンソール・ウィンドウに、次のテキストが表示されます。
Ring! Ring! New telephone call! Enter a customer ID between 1 and 1000:
カーソルをコロンの後に移動し、顧客ID(たとえば、5
)を入力し、[Enter]を押します。次のようなレスポンスが表示されます。
Here are the deals we've got for you: 1: ElectronicPayments Electronic payments eliminate the complications of handling checks. Enter the line number of the offer that catches your interest, or zero if none do:
カーソルを最後のコロンの後に移動し、「1
」を入力してオファーを選択します。サーバーによって、最後のメッセージがレスポンスされます。
プロセスが繰り返されます。プログラムを終了するには、数字を入力せずに、顧客IDプロンプトで[Enter]を押します。