|
注意 : | Oracle Tuxedo CORBA Java クライアントと Oracle Tuxedo CORBA Java クライアント ORB は Tuxedo 8.1 で非推奨になり、サポートされなくなりました。Oracle Tuxedo CORBA Java クライアントおよび Oracle Tuxedo CORBA Java クライアント ORB のテキスト参照、関連するコード サンプルはすべてサードパーティの Java ORB ライブラリの実装/実行の簡易化とプログラマによる参照だけに使用する必要があります。 |
注意 : | サード パーティの CORBA Java ORB のテクニカル サポートは、各ベンダによって提供されます。Oracle Tuxedo では、サード パーティの CORBA Java ORB に関する技術的なサポートやマニュアルは提供していません。 |
Wrapper サンプル アプリケーションでは、クラスに登録した学生の口座にクラスの代金が請求され、その口座残高が更新されます。また、学生は自身の口座残高を照会できます。
Wrapper サンプル アプリケーションでは、ATMI サービスを使用します。Billing サーバ アプリケーションには、Teller
オブジェクトがあります。このオブジェクトは、ATMI アプリケーションの「Teller」を呼び出します。Teller アプリケーションは、次の課金用のオペレーションを実行します。
University データベースは、口座情報を含めるために変更されます。
図 6-1 に、Wrapper サンプル アプリケーションのしくみを示します。
ここでは、CORBA アプリケーションで ATMI サービスをラッピングする際に必要な開発プロセスについて説明します。以下の手順は、「Basic サンプル アプリケーション」で概説した開発手順の追加手順です。
注意 : | この節に記載されている手順は既に完了しており、Wrapper サンプル アプリケーションに組み込まれています。 |
ATMI サービスをラッピングする際は、ATMI サービスと相互運用するオブジェクト、およびそのオブジェクトを作成するファクトリを定義する必要があります。Wrapper サンプル アプリケーションの場合、Teller
と TellerFactory
オブジェクトが ATMI サービスとの相互運用を行います。開発プロセスでは、Object Management Group (OMG) インタフェース定義言語 (IDL) で Teller
および TellerFactory
オブジェクトのインタフェースを次のように定義します。
また、Balance
フィールドを StudentDetails
構造体に追加する必要があります。クライアント アプリケーションでは、Balance
フィールドを使用して学生の口座残高を示します。さらに、ユーザ例外 DelinquentAccount
も追加します。
開発プロセスでは、クライアント アプリケーションにコードを追加して、register_for_courses()
オペレーションによって生成されるユーザ例外 Delinquent Account
を処理します。
開発プロセスでは、Billing サーバ アプリケーションに以下を記述します。
開発プロセスでは、University サーバ アプリケーションに次のコードを追加します。
TellerFactory
オブジェクトの FactoryFinder オブジェクトを取得する。University サーバ アプリケーションでは、クライアント アプリケーションの場合と同様に Bootstrap および FactoryFinder オブジェクトを使用する。TellerFactory
オブジェクトの参照を含める。TellerFactory
オブジェクトは、Teller
オブジェクトの作成に使用する。Registrar
オブジェクトの get_student_details()
および register_for_courses()
オペレーションのメソッド実装では、Teller
オブジェクトの get_balance()
および debit()
オペレーションを呼び出する。
ATMI サービスをラッピングするサーバ アプリケーションの記述方法については、『Tuxedo CORBA サーバ アプリケーションの開発方法』を参照してください。
開発プロセスでは、UBBCONFIG
ファイルに以下の変更を加える必要があります。
開発プロセスでは、Teller
および TellerFactory
オブジェクトのアクティブ化ポリシーとトランザクション ポリシーを定義する必要があります。Teller
および TellerFactory
オブジェクトの各ポリシーは次のように設定します。
CORBA オブジェクトのアクティブ化ポリシーとトランザクション ポリシーの定義については、『Tuxedo CORBA サーバ アプリケーションの開発方法』を参照してください。
Wrapper サンプル アプリケーションをビルドするには、次の手順に従います。
注意 : | Wrapper サンプル アプリケーションをビルドまたは実行する前に、「環境設定」の手順を実行しておく必要があります。 |
Wrapper サンプル アプリケーションの各ファイルは、次のディレクトリにあります。
drive
:\
TUXDIR
\samples\corba\university
\wrapper
/usr/
TUXDIR
/samples/corba/university
/wrapper
また、utils
ディレクトリも作業ディレクトリにコピーする必要があります。utils
ディレクトリには、ログ、トレース、および University データベースへのアクセスを設定するファイルが格納されています。
Wrapper サンプル アプリケーションを作成するには、表 6-1 に示すファイルを使用します。
Oracle Tuxedo ソフトウェアのインストール時には、サンプル アプリケーションは読み取り専用に設定されています。Wrapper サンプル アプリケーションのファイルを編集または作成するには、次のように作業ディレクトリにコピーしたファイル保護の属性を変更する必要があります。
prompt>attrib -r drive:\
workdirectory
\*.*
prompt>chmod u+rw /
workdirectory
/*.*
次のコマンドを使用して、Wrapper サンプル アプリケーションのクライアント アプリケーションとサーバ アプリケーションのビルドに使用する環境変数を設定します。
次のコマンドを使用して、Wrapper サンプル アプリケーションで使用する University データベースを初期化します。
prompt>nmake -f makefilew.nt initdb
prompt>make -f makefilew.mk initdb
次のコマンドを使用して、UBBCONFIG
ファイルをロードします。
UBBCONFIG
ファイルの作成プロセスでは、アプリケーション パスワードの入力が求められます。このパスワードは、クライアント アプリケーションへのログオンに使用されます。パスワードを入力して Enter キーを押します。その際、パスワードを再入力してパスワードの確認を求めるメッセージが表示されます。
トランザクション ログには、CORBA アプリケーションでのトランザクション処理が記録されます。開発プロセスでは、UBBCONFIG
ファイルの TLOGDEVICE
パラメータでトランザクション ログの場所を定義する必要があります。Wrapper サンプル アプリケーションの場合、トランザクション ログは作業ディレクトリに格納されています。
Wrapper サンプル アプリケーションのトランザクション ログを開くには、以下の手順に従います。
crdl -b
blocks
-z
directorypath
crlog -m SITE1
blocks
にトランザクション ログに割り当てるブロック数を指定し、directorypath
にトランザクション ログの場所を指定します。directorypath
オプションは、UBBCONFIG
ファイルの TLOGDEVICE
パラメータで指定した場所と一致しなければなりません。Windows でのコマンドの例を次に示します。
crdl -b 500 -z c:¥mysamples¥university¥wrapper¥TLOG
開発プロセスでは、buildobjclient
および buildobjserver
コマンドを使用して、クライアント アプリケーションとサーバ アプリケーションをビルドします。ただし、Wrapper サンプル アプリケーションの場合は、この手順は不要です。Wrapper サンプル アプリケーションのディレクトリには、makefile
が格納されています。この makefile により、クライアントとサーバ サンプル アプリケーションがビルドされます。
Wrapper サンプル アプリケーションの CORBA C++ クライアント アプリケーションとサーバ アプリケーションをビルドするには、次のコマンドを使用します。
prompt>nmake -f makefilew.nt
prompt>make -f makefilew.mk
Wrapper サンプル アプリケーションを実行するには、次の手順に従います。
Wrapper サンプル アプリケーションでシステムおよびサンプル アプリケーションのサーバ プロセスを開始するには、次のコマンドを入力します。
このコマンドを入力すると、次のサーバ プロセスが開始されます。
ほかのサンプル アプリケーションを使用するには、次のコマンドを入力して、システムおよびサンプル アプリケーションのサーバ プロセスを停止します。
Wrapper サンプル アプリケーションの CORBA C++ クライアント アプリケーションを起動するには、以下の手順に従います。
以降の節では、Wrapper サンプル アプリケーションのクライアント アプリケーションの使用方法について説明します。
Wrapper サンプル アプリケーションの CORBA C++ クライアント アプリケーションには、次の追加オプションがあります。
<B> Display Your Balance
Display Your Balance
オプションを使用すると、CORBA C++ クライアント アプリケーションのログオンに使用する学生 ID に関連付けられた口座残高が表示されます。
C++ CORBA クライアント アプリケーションを終了するには、Options プロンプトで「E
」を入力します。