|
以下の節では、Oracle Tuxedo と Oracle WebLogic Server の間の相互運用性の機能について説明します。
Oracle Tuxedo と Oracle WebLogic Server 間の相互運用性は、次の 3 つの通信ソフトウェア プロセス セットとして実装されます。
Jolt サーバ リスナ (JSL) は、Tuxedo サーバで動作するリスンニング プロセスです。Jolt クライアントからの接続要求を受け付け、同じ Tuxedo サーバで動作する Jolt サーバ ハンドラに接続を割り当てます。また、Jolt サーバ ハンドラ プロセスのプールを管理し、負荷の条件に応じてそれらを起動します。
Jolt サーバ ハンドラ (JSH) は、Tuxedo サーバで動作するゲートウェイ プロセスとして、Jolt クライアントと Tuxedo ATMI サーバ アプリケーション間の通信を処理します。JSH プロセスはアプリケーションの管理ドメインに常駐し、ローカル Tuxedo 掲示板にクライアントとして登録されます。
各 JSH プロセスは、複数の Jolt クライアントを管理できます。JSH は、特定の Jolt クライアントに関するすべての要求と応答を 1 つの接続で多重化します。
Oracle Jolt は、Tuxedo サーバで動作する Jolt サービス リスナ (JSL) を使用して Tuxedo サービスへの要求を管理する Java ベースのクライアント API です。Jolt API は、WebLogic Server API に組み込まれ、サーブレットなどの Oracle WebLogic アプリケーションからアクセスできます。
IIOP リスナ (ISL) は、Tuxedo サーバで動作するリスン プロセスです。CORBA クライアントからの接続要求を受け付け、同じ Tuxedo サーバで動作する IIOP ハンドラに接続を割り当てます。また、IIOP ハンドラ プロセスのプールを管理し、負荷の条件に応じてそれらを起動します。
IIOP ハンドラ (ISH) は、Tuxedo サーバで動作するゲートウェイ プロセスとして、CORBA クライアントと Tuxedo サーバ アプリケーション間の IIOP 通信を処理します。ISH プロセスはアプリケーションの管理ドメインに常駐し、ローカル Oracle Tuxedo 掲示板にクライアントとして登録されます。
各 ISH プロセスは、複数の CORBA クライアントを管理できます。ISH は、特定の CORBA クライアントに関するすべての要求と応答を 1 つの接続で多重化します。
TDomain ゲートウェイは、GWTDOMAIN サーバ プロセスによって実装され、ネットワーク プロトコル TCP/IP 上を流れる特別に設計されたトランザクション処理プロトコルによって 2 つ以上の Oracle Tuxedo ドメイン間の相互運用性を実現します。WebLogic Tuxedo Connector ゲートウェイと一緒に使用すると、Oracle Tuxedo TDomain ゲートウェイは Tuxedo ドメインと WebLogic Server アプリケーション間の相互運用性も実現できます。
WebLogic Tuxedo Connector (WTC) を使用すると、WebLogic Server と Tuxedo ATMI および CORBA 環境の間の双方向の相互運用が可能になります。WTC ゲートウェイは、TDomain ゲートウェイ プロセスをサポートしています。
Tuxedo 10g リリース 3 (10.3) は以下のバージョンの WebLogic/WTC をサポートします。
Oracle Tuxedo と Oracle WebLogic Server 間の相互運用性は、次のアプリケーション プログラミング インタフェースを使用することで実現されます。
ATMI は、Oracle Tuxedo システムでサポートされるすべての ATMI 環境で機能する、通信、トランザクション、およびデータ バッファ管理のためのインタフェースを提供します。ATMI については、『Oracle Tuxedo システム入門』を参照してください。
JATMI は、Oracle Tuxedo ATMI の Oracle WebLogic Server 用の Java 実装です。JATMI を使用すると、WebLogic Server アプリケーション サーバが Tuxedo ATMI サービスにアクセスできます。JATMI の詳細については、『WebLogic Tuxedo Connector プログラマーズ ガイド』を参照してください。
Oracle Jolt for Oracle WebLogic Server は、Tuxedo サーバで動作する Oracle Tuxedo サービスへの要求を管理する Java ベースのクライアント API です。Jolt API は、WebLogic Server API に組み込まれ、サーブレットなどの Oracle WebLogic アプリケーションからアクセスできます。Jolt API の詳細については、『Oracle WebLogic Server での Oracle Jolt の使用』を参照してください。
RMI (Remote Method Invocation) は、ある Java 仮想マシンで実行されているオブジェクトが別の Java 仮想マシンで実行されているオブジェクトを呼び出すための Java ベースの API セットおよびプロトコルです。RMI は、複数の Java 仮想マシンの間での分散 Java アプリケーションの動作を指定します。RMI のネイティブ プロトコルは、Java Remote Method Protocol (JRMP) と呼ばれています。
RMI の詳細については、『WebLogic RMI プログラマーズ ガイド』を参照してください。
RMI-over-IIOP は、すべてのリモート インタフェースが RMI インタフェースとして最初に定義された場合、任意の言語で実装された CORBA オブジェクトとの相互運用性を提供します。RMI-over-IIOP は、RMI-on-IIOP、RMI/IIOP、または RMI-IIOP とも表記します。以下の説明では、RMI-over-IIOP という表記を使用します。
RMI と CORBA の場合、プログラマは RMI の容易なプログラミング機能と CORBA の幅広い相互運用性の間で選択を迫られます。このジレンマを解決するため、IBM と Sun の JavaSoft の両社が Object Management Group (OMG) と協力して共同開発したのが、RMI-over-IIOP です。JavaSoft 社は、RMI-over-IIOP を同社の Java Development Kit (JDK) に組み込んでいます。
RMI-over-IIOP を使用すると、Java プログラマは CORBA 接続が組み込まれたアプリケーションを RMI で作成できます。また、CORBA 2.3 で Objects-by-Value がサポートされたことにより、CORBA プログラマは EJB 接続が組み込まれたアプリケーションを CORBA で作成できます。
| 注意 : | Objects-by-Value および Oracle Tuxedo CORBA でサポートされる値型については、『Tuxedo CORBA プログラミング リファレンス』の「OMG IDL 文の C++ へのマッピング」を参照してください。 |
RMI-over-IIOP、および CORBA の Objects-by-Value のサポートにより、次のクライアント サーバ インタフェースが可能になります。
| 注意 : | もちろん、「RMI-over-IIOP クライアント CORBA サーバ」インタフェースの場合、RMI-over-IIOP クライアントは必ずしも既存の CORBA オブジェクトすべてにアクセスできるわけではありません。IDL で定義される CORBA オブジェクトのセマンティクスは RMI-over-IIOP オブジェクトのセマンティクスのスーパーセットであるからです。このため、既存の CORBA オブジェクトの IDL を常に RMI-over-IIOP Java インタフェースにマップできるとは限りません。 |
RMI-over-IIOP API を使用して作成されたサーバ バイナリ (クラス ファイルなど) は、JRMP (RMI のネイティブ プロトコル)、IIOP、またはその両方としてエクスポートできます。RMI-over-IIOP オブジェクトを JRMP と IIOP の両方に同時にエクスポートすることを、デュアル エクスポートと呼びます。
RMI-over-IIOP の詳細については、「RMI over IIOP の使い方」を参照してください。
Oracle Jolt for WebLogic Server は、Oracle WebLogic Server アプリケーションから Oracle Tuxedo 8.1 以降の ATMI サービスへの一方向の接続性を提供します。Oracle Jolt for WebLogic Server を使用すると、WebLogic Server をフロント エンドの HTTP サーバおよびアプリケーション サーバとして使用して Tuxedo サービスを Web 上で提供できます。次の図に、この接続の実装を示します。

Oracle Jolt は、Tuxedo サーバで動作する Jolt サーバ リスナを使用して Oracle Tuxedo サービスへの要求を管理する Java ベースのクライアント API です。Jolt API は、EJB、JSP、サーブレット、Java HTML (JHTML)、またはほかの Oracle WebLogic アプリケーション サーバからアクセスできます。
WebLogic Server は、Jolt セッション プールの一種であるサーブレット セッション プール (一般には単に Jolt 接続プールと呼ぶ) を使用します。Jolt 接続プールは、HTTP サーブレットの内部での使用に便利な追加機能を提供します。
Jolt 接続プールを利用すると、Oracle WebLogic Server アプリケーション サーバが Oracle Tuxedo アプリケーション内の Tuxedo サービスを呼び出すことができます。このプール機能では、接続プールに障害が発生した場合に接続プールをリセットできます。このため、接続プールの再起動が必要な場合に WebLogic Server を再起動する必要がありません。
Java サーバ ハンドラと WebLogic Server 間のネットワーク接続では、40 ビット、56 ビット、または 128 ビット LLE のワイヤ レベル セキュリティがサポートされています。LLE (リンク レベルの暗号化) は、ネットワーク リンク上でのデータの機密性を実現するための Tuxedo ベースのプロトコルです。
Jolt は、トランザクション境界の判定、セキュリティの伝達、および接続のリセットをサポートします。Jolt は、WebLogic Server で確立されたセキュリティ コンテキストを Oracle Tuxedo アプリケーションに伝達するためのメカニズムを備えています。
WebLogic Server の認証を受けるユーザ資格は、適切なセキュリティ インタフェース/プロトコルにマップされます。受信した要求を Tuxedo ATMI サービスの呼び出し前に認証する必要はありません。
WebLogic Server との Oracle Jolt の使い方については、『Oracle WebLogic Server での Oracle Jolt の使用』を参照してください。このマニュアルでは、Oracle Jolt for WebLogic Server の操作について説明すると共に、Oracle Jolt、Oracle Tuxedo ATMI、および WebLogic Server を使用、コンフィグレーション、および統合する方法についても説明してあります。
TDomain と WTC ゲートウェイは、Oracle Tuxedo アプリケーションにデプロイされている ATMI サービス/CORBA オブジェクトと WebLogic Server アプリケーションにデプロイされている EJB オブジェクトの間の双方向の接続性を提供します。これらのゲートウェイは、Oracle Tuxedo/WebLogic Server デプロイメントの次の相互運用性を可能にします。
Oracle Tuxedo アプリケーション クライアントおよびサーバは WebLogic Server アプリケーションの EJB オブジェクトを呼び出すことができ、これらのオブジェクトはほかの EJB オブジェクト、JSP、または Java サーブレットを呼び出すことができます。次の図に、この接続の実装を示します。

| 注意 : | Tuxedo クライアントには、ATMI クライアント、Jolt クライアント、および CORBA C++ クライアントが含まれます。Tuxedo クライアントの概要については、『製品の概要』の「クライアントおよびサーバ コンポーネント」を参照してください。 |
TDomain ゲートウェイを使用すると、Tuxedo ドメインはほかの Oracle Tuxedo ドメインとサービスを共有できるだけではなく、WebLogic Server 6.1 以降とも WTC ゲートウェイを介してサービスを共有できます。WTC ゲートウェイは、TDomain ゲートウェイ プロセスをサポートしています。
これらのゲートウェイを使用すると、Tuxedo ATMI クライアント、およびクライアントとして動作する Tuxedo ATMI サーバは WebLogic Server EJB オブジェクトにアクセスできます。TDomain ゲートウェイは ATMI クライアントの要求を WTC ゲートウェイに送信し、WTC ゲートウェイはその要求を RMI 呼び出しに変換して適切な EJB オブジェクトにアクセスします。
同様に、これらのゲートウェイを使用すると、Tuxedo CORBA クライアント、およびクライアントとして動作する Tuxedo CORBA サーバは WebLogic Server EJB オブジェクトにアクセスできます。TDomain ゲートウェイは CORBA RMI-over-IIOP クライアントの要求を WTC ゲートウェイに送信し、WTC ゲートウェイはその要求を適切な EJB オブジェクトに転送します。
| 注意 : | WebLogic Server リリース 7.0、8.1、9.x、および 10.0 に付属の WTC コンポーネントは、WTC 1.0 製品のすべての機能をサポートしています。WebLogic Server 製品に付属の WTC コンポーネントを使用することをお勧めします。 |
WebLogic Server アプリケーション内の EJB アプリケーション サーバは、WTC および TDomain ゲートウェイを使用して Tuxedo アプリケーション内のサービスと CORBA オブジェクトを呼び出すことができます。次の図に、この接続の実装を示します。

WTC および TDomain ゲートウェイを使用すると、クライアントとして動作する WebLogic Server EJB、JSP、または Java サーブレットが Tuxedo サービスにアクセスできます。WTC ゲートウェイは EJB/JSP/サーブレットの JATMI 要求を ATMI に変換し、TDomain ゲートウェイはその ATMI 要求をサービスの提供先である ATMI サーバに送信します。
同様に、これらのゲートウェイを使用すると、クライアントとして動作する WebLogic Server EJB、JSP、または Java サーブレットが Tuxedo CORBA オブジェクトにアクセスできます。WTC ゲートウェイは EJB/JSP/サーブレットの CORBA Java または RMI-over-IIOP 要求を Tuxedo GIOP (TGIOP) 要求メッセージに挿入し、TDomain ゲートウェイはその TGIOP 要求をオブジェクトの提供先である Tuxedo CORBA サーバに送信します。
| 注意 : | WebLogic Server リリース 7.0、8.1、9.x、および 10.0 に付属の WTC コンポーネントは、WTC 1.0 製品のすべての機能をサポートしています。WebLogic Server 製品に付属の WTC コンポーネントを使用することをお勧めします。 |
TDomain および WTC ゲートウェイ間のネットワーク接続では、40 ビット、56 ビット、または 128 ビット LLE のワイヤ レベル セキュリティがサポートされています。LLE (リンク レベルの暗号化) は、ネットワーク リンク上でのデータの機密性を実現するための Tuxedo ベースのプロトコルです。
TDomain および WTC ゲートウェイでは、Oracle Tuxedo/WebLogic Server デプロイメントのアプリケーション クライアントとサーバ間のトランザクション コンテキストとセキュリティ コンテキストの双方向の伝達が完全にサポートされています。
Tuxedo Domains ゲートウェイの詳細については、『Oracle Tuxedo Domains コンポーネント』を参照してください。WTC ゲートウェイの詳細については、「WebLogic Tuxedo Connector」を参照してください。
TDomain および WTC ゲートウェイを使用して Oracle Tuxedo CORBA から Oracle WebLogic Server への接続を実現できるのに加え、Tuxedo CORBA C++ クライアントまたはサーバは、RMI-over-IIOP および CORBA インタフェース定義言語 (IDL) を使用して WebLogic Server アプリケーション サーバを直接呼び出すことができます。次の図に、この接続を示します。

Oracle Tuxedo で開発した CORBA C++ クライアント アプリケーションが WebLogic Server 内の EJB と直接対話する仕組みを示したサンプル アプリケーションについては、「Oracle Tuxedo CORBA クライアントと WebLogic Server EJB の接続」を参照してください。
次の表に、Oracle Tuxedo/WebLogic Server デプロイメントの相互運用性の機能をまとめます。
WebLogic Server リリース 7.0 以降には、相互運用性のさまざまなサンプル アプリケーションが添付されています。これらのサンプル アプリケーションでは、クライアントおよびサーバのプログラマに対して、アプリケーションで Tuxedo ATMI サービスと WebLogic Server EJB オブジェクトを結合するための基本概念と、アプリケーションで Tuxedo CORBA オブジェクトと WebLogic Server EJB オブジェクトを結合するための基本概念が説明されています。
WebLogic Server 7.0 または 8.1 の場合、ATMI は次のディレクトリに格納されています。
WL_HOME\samples\server\src\examples\wtc
WL_HOME は、インストールされている WebLogic Server 7.0 または 8.1 の最上位ディレクトリを表します (デフォルトでは weblogic700)。これらのサンプルには、基底の WTC 技術を使用して、WebLogic Server が Tuxedo ATMI サーバおよびクライアントと連係するようコンフィグレーションおよび設定する方法が示されています。
WebLogic Server 7.0 または 8.1 の場合、RMI-over-IIOP のサンプル コードは次のディレクトリに格納されています。
WL_HOME\samples\server\src\examples\iiop
これらのサンプルには、基底の WTC 技術を使用して、WebLogic Server が Tuxedo CORBA サーバおよびクライアントと連係するようコンフィグレーションおよび設定する方法が示されています。
ATMI、JATMI、CORBA Java、または RMI-over-IIOP API を使用して相互運用性アプリケーションを開発する方法については、「WebLogic Tuxedo Connector」を参照してください。
|