相互運用性

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

Oracle WebLogic Serverとの相互運用性

次の各項では、Oracle TuxedoとOracle WebLogic Serverの間の相互運用性機能について説明します。

 


相互運用性ソフトウェアのコンポーネント

Oracle TuxedoとOracle WebLogic Serverの間の相互運用性は、次に示す3つのセットのソフトウェア・プロセス通信によって実現されます。

セット
Tuxedoコンポーネント
相互運用性の向き
WebLogic Serverコンポーネント
相互運用性
1
Joltサーバー・リスナー/Joltサーバー・ハンドラ
¨
Oracle Jolt for Oracle WebLogic Server
WebLogic Serverアプリケーション・サーバーがTuxedo ATMIサービスをコールできるようになります。
2
TDomainゲートウェイ
´
WebLogic Tuxedo Connector (WTC)
WebLogic Serverアプリケーション・サーバーがTuxedo ATMIサービスをコールできるようになります。
WebLogic Serverアプリケーション・サーバーがTuxedo CORBA C++オブジェクトをコールできるようになります。
Tuxedo ATMIクライアントまたはサーバーがWebLogic Serverアプリケーション・サーバーをコールできるようになります。
Tuxedo CORBA C++クライアントまたはサーバーがWebLogic Serverアプリケーション・サーバーをコールできるようになります。

Joltサーバー・リスナー

Joltサーバー・リスナー(JSL)は、Tuxedoサーバーで稼働するリスニング・プロセスで、Joltクライアントからの接続リクエストを受け付け、同様にTuxedoサーバーで稼働するJoltサーバー・ハンドラに接続を割り当てます。また、Joltサーバー・ハンドラ・プロセスのプールを管理し、負荷に対応して起動させます。

Joltサーバー・ハンドラ

Joltサーバー・ハンドラ(JSH)は、Tuxedoサーバーで稼働するゲートウェイ・プロセスで、JoltクライアントとTuxedo ATMIサーバー・アプリケーション間の通信を処理します。JSHプロセスはアプリケーションの管理ドメインに常駐し、ローカルのTuxedoの掲示板にクライアントとして登録されます。

各JSHプロセスは、複数のJoltクライアントを管理できます。JSHはすべてのリクエストを多重化し、1つのJoltクライアントに1つの接続で応答します。

Oracle Jolt for WebLogic Server

Oracle JoltはJavaベースのクライアントAPIであり、Tuxedoサーバー上で実行されているJoltサービス・リスナー(JSL)経由で、Tuxedoサービスに対するリクエストを管理します。Jolt APIはWebLogic API内に埋め込まれており、サーブレットまたは他のOracle WebLogicアプリケーションからアクセス可能です。

IIOPリスナー

IIOPリスナー(ISL)は、Tuxedoサーバー上で実行されるリスニング・プロセスであり、CORBAクライアントからの接続リクエストを受け入れ、同じくTuxedoサーバー上で実行されているIIOPハンドラに接続を割り当てます。また、IIOPハンドラ・プロセスのプールを監視して、ロード要求に応じてプロセスを開始します。

IIOPハンドラ

IIOPハンドラ(ISH)は、Tuxedoサーバー上で実行されるゲートウェイ・プロセスであり、CORBAクライアントとTuxedoサーバー・アプリケーションの間のIIOP通信を処理します。ISHプロセスはアプリケーションの管理ドメインに常駐し、ローカルなOracle Tuxedo掲示板にクライアントとして登録されます。

各ISHプロセスは複数のCORBAクライアントを管理できます。ISHは、1つの接続に対して特定のCORBAクライアントを使用して、すべてのリクエストおよび応答を多重化します。

TDomainゲートウェイ

TDomainゲートウェイはGWTDOMAINサーバー・プロセスにより実装され、ネットワーク・プロトコルTCP/IPにより送信される特殊設計のトランザクション処理プロトコルを使用して、複数のOracle Tuxedoドメイン間での相互運用性を実現します。また、Oracle Tuxedo TDomainゲートウェイは、WebLogic Tuxedo Connectorゲートウェイと連携することで、TuxedoドメインとWebLogic Serverアプリケーションの間の相互運用性も実現できます。

WebLogic Tuxedo Connector

WebLogic Tuxedo Connector (WTC)を使用すると、WebLogic ServerとTuxedo ATMIおよびCORBA環境の間の双方向の相互運用性を実現できます。WTCゲートウェイでは、TDomainゲートウェイ・プロトコルがサポートされています。

Oracle Tuxedo 12c リリース1 (12.1.1)では、次のWebLogic/WTCバージョンがサポートされています。

 


相互運用性のプログラミング・インタフェース

Oracle TuxedoとOracle WebLogic Serverの間の相互運用性は、次のアプリケーション・プログラミング・インタフェースを使用して実現されます。

ATMIインタフェース

ATMIは、通信、トランザクションおよびデータバッファ管理を行うためのインタフェースであり、Oracle TuxedoシステムでサポートされるすべてのATMI環境で使用できます。ATMIの詳細は、Oracle Tuxedo ATMIの紹介を参照してください。

JATMIインタフェース

JATMIは、Oracle Tuxedo ATMIのOracle WebLogic Server Java実装です。これにより、WebLogic Server アプリケーション・サーバーはTuxedo ATMIサービスにアクセスできます。JATMIの詳細は、http://download.oracle.com/docs/cd/E12840_01/wls/docs103/wtc_atmi/index.htmlにあるWebLogic Tuxedo Connectorプログラマーズ・ガイドを参照してください。

Joltインタフェース

Oracle Jolt for Oracle WebLogic Serverは、Tuxedoサーバー上で実行されているOracle Tuxedoサービスへのリクエストを管理するJavaベースのクライアントAPIです。Jolt APIはWebLogic API内に埋め込まれており、サーブレットまたは他のOracle WebLogicアプリケーションからアクセス可能です。Jolt APIの詳細は、Oracle WebLogic ServerでのOracle Joltの使用を参照してください。

RMIインタフェース

Remote Method InvocationはJavaベースのAPIセットおよびプロトコルであり、あるJava仮想マシン上で実行されているオブジェクトで、別のJava仮想マシンで実行されているオブジェクトのメソッドを起動できるようにします。RMIは、複数のJava仮想マシンに分散されたJavaアプリケーションの動作を指定します。RMIのネイティブ・プロトコルはJava Remote Method Protocol (JRMP)と呼ばれます。

RMIの詳細は、http://download.oracle.com/docs/cd/E12840_01/wls/docs103/rmi/index.htmlにある「WebLogic RMIのプログラミング」を参照してください。

RMI-over-IIOPインタフェース

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は、Java Development Kit (JDK)にRMI-over-IIOPを組み込んでいます。

RMI-over-IIOPを使用すると、JavaプログラマはCORBA接続を含むアプリケーションをRMIで作成できます。またCORBA 2.3のObjects-by-Valueのサポートを使用すると、CORBAプログラマは、EJB接続を含むアプリケーションをCORBAで作成できます。

注意: Objects-by-Valueの詳細、およびOracle Tuxedo CORBAでサポートされている値タイプの詳細は、Oracle Tuxedo CORBAプログラミング・リファレンスのC++へのOMG IDL文のマッピングに関する項を参照してください。

RMI-over-IIOPおよびCORBAでのObjects-by-Valueのサポートにより、次のクライアント/サーバー・インタフェースが使用可能になります。

注意: RMI-over-IIOPクライアント 矢印記号 CORBAサーバーのインタフェースの場合、IDLで定義されるCORBAオブジェクトのセマンティクスはRMI-over-IIOPオブジェクトのセマンティクスのスーパーセットであるため、RMI-over-IIOPクライアントが必ずしも既存のCORBAオブジェクトすべてにアクセスできるわけではありません。このため、既存のCORBAオブジェクトのIDLを常にRMI-over-IIOP Javaインタフェースにマップできるとは限りません。

RMI-over-IIOP APIを使用して作成されたサーバー・バイナリ(クラス・ファイル)は、JRMP (RMIのネイティブ・プロトコル)またはIIOP、あるいはその両方としてエクスポートできます。RMI-over-IIOPオブジェクトをJRMPとIIOPの両方に同時にエクスポートすることを、デュアル・エクスポートと呼びます。

RMI-over-IIOPの詳細は、「WebLogic RMI over IIOPのプログラミング」(http://download.oracle.com/docs/cd/E12840_01/wls/docs103/rmi/iiop_basic.html)を参照してください。

 


JSL/JSH-Joltの一方向の接続性

Oracle Jolt for WebLogic Serverは、Oracle WebLogic ServerアプリケーションからOracle Tuxedo 8.1以降のATMIサービスへの一方向の接続性を提供します。Oracle Jolt for WebLogic Serverを使用すると、WebLogic Serverをフロント・エンドのHTTPサーバーおよびアプリケーション・サーバーとして使用してTuxedoサービスをWeb上で提供できます。図2-1に、この接続の実装を示します。

図2-1 Joltを使用したWebLogic ServerからOracle Tuxedoへの接続

Joltを使用したWebLogic ServerからOracle Tuxedoへの接続

Oracle JoltはJavaベースのクライアントAPIであり、Tuxedoサーバー上で実行されているJoltサーバー・リスナーを使用して、Oracle Tuxedoサービスに対するリクエストを管理します。Jolt APIは、EJB、JSP、サーブレット、Java HTML (JHTML)またはその他のOracle WebLogicアプリケーション・サーバーからアクセス可能です。

Jolt接続プール

WebLogic Serverでは、サーブレット・セッション・プール(一般には単にJolt接続プール)と呼ばれるJoltセッション・プールのバリエーションが使用されます。Jolt接続プールによって、HTTPサーブレット内部での使用に役立つ機能が追加されます。

Jolt接続プーリングにより、WebLogic Serverアプリケーション・サーバーはOracle Tuxedoアプリケーション内のOracle Tuxedoサービスを起動できます。プーリング機能では、接続プールの障害発生時の接続プールのリセットがサポートされているため、接続プールの再起動が必要な場合でもWebLogic Serverを再起動する必要はありません。

Joltワイヤ・レベル・セキュリティ

Javaサーバー・ハンドラとWebLogic Server間のネットワーク接続では、ワイヤ・レベルのセキュリティとして、40ビット、56ビットまたは128ビットのLLEがサポートされています。LLEはLink-Level Encryptionの略語であり、ネットワーク・リンク上でデータ秘匿性を確立するためのOracle Tuxedoベース・プロトコルです。

Joltのトランザクションおよびセキュリティ・コンテキストの伝達

Joltでは、トランザクション・デマーケーション、セキュリティの伝播、および接続のリセットがサポートされています。これには、WebLogic Serverで確立されたセキュリティ・コンテキストをOracle Tuxedoアプリケーションに伝播するメカニズムが備わっています。

WebLogic Serverにより認証されたユーザー資格証明は、適切なセキュリティ・インタフェースまたはプロトコルにマップされます。Tuxedo ATMIサービスの起動前に受信リクエストを再び認証する必要はありません。

Joltのドキュメント

Oracle WebLogic ServerでのOracle Joltの使用方法の詳細は、『Oracle WebLogic ServerでのOracle Joltの使用』を参照してください。このドキュメントでは、Oracle Jolt for WebLogic Serverの操作について説明し、Oracle Jolt、Oracle Tuxedo ATMIおよびOracle WebLogic Serverの使用、構成および統合の方法を示しています。

 


TDomain-WTCの双方向の接続性

TDomainおよびWTCゲートウェイは、Oracle Tuxedoアプリケーション内にデプロイされたATMIサービスまたはCORBAオブジェクトWebLogic Serverアプリケーション内にデプロイされたOracle Tuxedoアプリケーションのの双方向の接続を実現します。また、これらのゲートウェイは、Oracle TuxedoおよびWebLogic Serverのデプロイメントで次のような相互運用性を実現します。

Oracle TuxedoからOracle WebLogic Serverへの接続

Oracle TuxedoアプリケーションのクライアントおよびサーバーはWebLogic Serverアプリケーション内でEJBオブジェクトを起動し、起動されたEJBオブジェクトは、他のEJBオブジェクト、JSPまたはJavaサーブレットを起動できます。図2-2は、この接続がどのように確立されるかを示しています。

図2-2 TuxedoからWebLogic Serverへの接続

TuxedoからWebLogic Serverへの接続

注意: Oracle Tuxedoクライアントには、ATMIクライアント、JoltクライアントおよびCORBA C++クライアントが含まれます。Tuxedoクライアントの全体像については、Oracle 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オブジェクトにアクセスします。

同様に、ゲートウェイにより、Oracle 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コンポーネントを使用することをお薦めします。

Oracle WebLogic ServerからOracle Tuxedoへの接続

WebLogic Serverアプリケーション内のEJBアプリケーション・サーバーは、WTCゲートウェイおよびTDomainゲートウェイを使用してOracle Tuxedoアプリケーション内のサービスおよびCORBAオブジェクトを起動できます。図2-3は、この接続がどのように確立されるかを示しています。

図2-3 WTCを使用したWebLogic ServerからTuxedoへの接続

WTCを使用したWebLogic ServerからTuxedoへの接続

WTCゲートウェイおよびTDomainゲートウェイにより、クライアントとして機能するWebLogic Server EJB、JSPまたはJavaサーブレットはOracle Tuxedoサービスにアクセスできます。WTCゲートウェイはEJB/JSP/サーブレットJATMIリクエストをATMIリクエストに変換し、TDomainゲートウェイはATMIリクエストを、リクエストされたサービスを提供するOracle Tuxedo ATMIサーバーに送信します。

同様に、これらのゲートウェイにより、クライアントとして機能するWebLogic Server EJB、JSPまたはJavaサーブレットはOracle Tuxedo CORBAオブジェクトにアクセスできます。WTCゲートウェイはEJB/JSP/サーブレットCORBA JavaまたはRMI-over-IIOPリクエストをOracle Tuxedo GIOP (TGIOP)リクエスト・メッセージ内に挿入し、TDomainゲートウェイはTGIOPリクエストを、リクエストされたオブジェクトを提供するOracle Tuxedo CORBAサーバーに送信します。

注意: WebLogic Serverリリース7.0、8.1、9.xおよび10.0に付属のWTCコンポーネントでは、WTC 1.0製品に組み込まれているすべての機能がサポートされています。WebLogic Server製品に付属のWTCコンポーネントを使用することをお薦めします。

TDomain-WTCワイヤ・レベル・セキュリティ

TDomainゲートウェイとWTCゲートウェイ間のネットワーク接続では、ワイヤ・レベルのセキュリティとして、40ビット、56ビットまたは128ビットのLLEがサポートされています。LLEはLink-Level Encryptionの略語であり、ネットワーク・リンク上でデータ秘匿性を確立するためのTuxedoベース・プロトコルです。

TDomain-WTCのトランザクションおよびセキュリティ・コンテキストの伝達

Oracle TuxedoおよびWebLogic Serverのデプロイメントにおけるアプリケーション・クライアントとサーバー間でのトランザクション・コンテキストおよびセキュリティ・コンテキストの双方向伝播は、TDomainおよびWTCゲートウェイを使用することで完全にサポートされます。

TDomainとWTCのドキュメント

Oracle Tuxedo Domainゲートウェイの詳細は、『Oracle Tuxedo Domainコンポーネントの使用』を参照してください。WTCゲートウェイの詳細は、『WebLogic Tuxedo Connector』(http://download.oracle.com/docs/cd/E12840_01/wls/docs103/wtc.html)を参照してください。

 


RMI-over-IIOPクライアントからEJBへの直接接続

TDomainゲートウェイおよびWTCゲートウェイを使用してOracle Tuxedo CORBAからOracle WebLogic Serverへの接続を確立する方法の他に、Tuxedo CORBA C++クライアントまたはサーバーがRMI-over-IIOPおよびCORBAインタフェース定義言語(IDL)を使用してWebLogic Serverアプリケーション・サーバーを直接コールする方法もあります。図2-4は、このタイプの接続を示しています。

図2-4 RMI-over-IIOPおよびIDLインタフェースを使用した直接のEJB接続

RMI-over-IIOPおよびIDLインタフェースを使用した直接のEJB接続

Oracle Tuxedoで開発されたCORBA C++クライアント・アプリケーションをWebLogic Server内のEJBと直接接続する方法を示すサンプル・アプリケーションについては、Oracle Tuxedo CORBAクライアントとWebLogic Server内のEJBの間の接続性を参照してください。

 


相互運用性のまとめ

表2-1に、Oracle TuxedoおよびWebLogic Serverのデプロイメントの相互運用性機能を要約します。

表2-1 Oracle TuxedoおよびWebLogic Serverの相互運用性機能(1/2)
コンポーネント
コール可能なオブジェクト
使用する機能
Tuxedo ATMIクライアント*
WebLogic Server EJBオブジェクト
WSH ** 矢印記号  TDomain 矢印記号  WTC
Tuxedo Joltクライアント ***
WebLogic Server EJBオブジェクト
JSH 矢印記号  TDomain 矢印記号  WTC
Tuxedo CORBA C++クライアント *
WebLogic Server EJBオブジェクト
ISH 矢印記号  TDomain 矢印記号  WTC または RMI-over-IIOPを使用したクライアントからEJBへの直接接続
Tuxedo ATMIサーバー
WebLogic Server EJBオブジェクト
TDomain 矢印記号  WTC
Tuxedo CORBA C++サーバー
WebLogic Server EJBオブジェクト
TDomain 矢印記号  WTCまたはRMI-over-IIOPを使用したクライアントからEJBへの直接接続
WebLogic Server EJB、JSP、サーブレット
Tuxedo ATMIサービス
WTC 矢印記号  TDomainまたは Jolt for WebLogic Server 矢印記号  JSH
WebLogic Server EJB、JSP、サーブレット
Tuxedo CORBA C++オブジェクト
WTC 矢印記号  TDomain
* ネイティブTuxedo ATMIまたはCORBA C++クライアントはTuxedoハンドラ・ゲートウェイ・プロセス(WSH、ISH)を使用しません。
** WSHはワークステーション・ハンドラの略。
*** Tuxedo JoltクライアントからWebLogic Server EJBオブジェクトへの接続はテストされていません。

 


相互運用性のサンプル・アプリケーション

WebLogic Serverリリース7.0以降には、相互運用性の様々なサンプル・アプリケーションが添付されています。これらのサンプル・アプリケーションでは、クライアントおよびサーバーのプログラマに対して、(1) アプリケーションでTuxedo ATMIサービスとWebLogic Server EJBオブジェクトを結合すること、および(2) アプリケーションで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」(http://download.oracle.com/docs/cd/E12840_01/wls/docs103/wtc.html)を参照してください。


  先頭に戻る       前  次