![]() ![]() ![]() ![]() |
以下の各節では、RMI over IIOP についての概要を説明します。
RMI over IIOP は、IIOP プロトコルを介して動作するように RMI を拡張したものです。この拡張には役に立つメリットが 2 つあります。まず、Java-to-Java パラダイムでは、これによって、標準 IIOP (Internet Inter-ORB Protocol) に対応したプログラムを作成できるようになります。一方、Java 単独の環境以外で作業している場合には、この拡張によって、Java プログラムから CORBA (Common Object Request Broker Architecture) クライアントとやり取りし、CORBA オブジェクトを実行できるようになります。CORBA クライアントは、C++ などのさまざまな言語で記述でき、インタフェース定義言語 (IDL : Interface-Definition-Language) を使用してリモート オブジェクトと対話できます。
WebLogic Server には、独自の ORB 実装が用意されています。この ORB は、プログラムで ORB.init()
が呼び出されたとき、または JNDI で "java:comp/ORB"
が参照されたときにデフォルトでインスタンス化されます。WebLogic Server が J2SE 1.4 で CORBA をサポートするために準拠している仕様については、「WebLogic Server での CORBA のサポート」を参照してください。
WebLogic Server での RMI-IIOP 実装の機能は以下のとおりです。
RMI-IIOP アプリケーションをどのように開発するかは、どのようなサービスやクライアントを統合するかによって決まります。RMI および RMI-IIOP を使用するさまざまなクライアント タイプに応じたアプリケーションの作成方法については、『スタンドアロン クライアント プログラマーズ ガイド』を参照してください。
図 7-1 に、IIOP を使用するオブジェクトの RMI オブジェクト関係を示します。
標準 IIOP プロトコルを活用して、RMI-IIOP を Java/RMI クライアントで使用することができます。WebLogic Server では、新しい小規模クライアント jar に基づいた新しい J2EE アプリケーション クライアント (シン クライアント) など、Java-to-Java 環境で RMI-IIOP を使用する複数の方法を用意しています。この新しいシン クライアントを使用するには、クライアント サイドの CLASSPATH に (WL_HOME/server/lib
にある) wlclient.jar
を含める必要があります。RMI-IIOP クライアント オプションの詳細については、『スタンドアロン クライアント プログラマーズ ガイド』を参照してください。
WebLogic Server は WebLogic Tuxedo Connector の実装も備えています。これは、Tuxedo サーバとの相互運用を可能にする基盤技術です。WebLogic Tuxedo Connector を使用すると、Tuxedo を ORB として活用したり、WebLogic Server 上で開発したアプリケーションと従来の Tuxedo システムを統合することができます。詳細については、『WebLogic Tuxedo Connector プログラマーズ ガイド』を参照してください。
開発者にとっては、CORBA/IDL クライアントから J2EE サービスにアクセスできることが必要です。しかし、Java と CORBA は非常に異なるオブジェクト モデルに基づいています。このため、この 2 つのプログラミング パラダイムに基づいて作成されたオブジェクト間でのデータ共有は、最近までは、Remote と CORBA のプリミティブ データ型だけに限られていました。CORBA の構造体も Java のオブジェクトも、異なるオブジェクト間で簡単にやり取りすることはできませんでした。この制限を解消するために、Object Management Group (OMG) によって Objects-by-Value 仕様が策定されました。この仕様では、Java オブジェクト モデルを CORBA/IDL プログラミング モデルにエクスポートでき、Java、CORBA の 2 つのモデル間での複合データ型の交換が可能になります。Objects By Value 仕様が正しく実装されている CORBA ORB を使用すれば、WebLogic Server でも Objects By Value をサポートできます。
WebLogic Server 9.x と WebLogic Server 7.0 および 8.1 の間の相互運用性は、以下のシナリオでサポートされています。
次の表に、2 つの WebLogic Server インスタンス間の相互運用性を実現するためにサポートされるオプションを示します。
|
|
|
|
|
|||
|
|||
|
次の表に、スタンドアロン Java クライアント アプリケーションと WebLogic Server インスタンス間の相互運用性を実現するためにサポートされるオプションを示します。
|
|
|
|
|
|||
|
|||
|
![]() ![]() ![]() |