ページの先頭行へ戻る
Interstage Application Server/Interstage Web Server Java EE運用ガイド

3.9 ORB(Object Request Broker)/RMI-IIOP

Java EEは、異なるマシンに配置されているオブジェクト間で、IIOP(Internet Inter-ORB Protocol)を介してリクエストの呼出しを行うORB(Object Request Broker)機能を提供します。

ORB

ORBは、リモートサーバ上のアプリケーションを呼び出すため、以下の処理を実行します。このため、アプリケーションは、ネットワーク通信に関する処理を実装する必要がありません。

ORBの定義変更は、Interstage Java EE管理コンソールまたはasadminコマンドで編集できます。

RMI-IIOP

RMI-IIOPを使用するアプリケーションは、RMI(Remote Method Invocation)形式でアプリケーションを作成することで、IIOP通信してリモートサーバで運用されたEnterprise JavaBeanを呼び出すことができます。JNDIを使用してリモートサーバのネーミングサービスにアクセスする場合もIIOP通信で行います。
同一Java VM上のアプリケーションを呼び出す場合には、ORBが自動的にIIOP通信を介さずにアプリケーションを呼び出し、不要なネットワーク通信が抑止されるため、性能が最適化されます。

IIOPリスナ

IIOPリスナーは、Enterprise JavaBeanのクライアントよりネットワーク接続を受信するリスナーソケットです。ドメインには、3つのリスナーが用意されています。各リスナーには、リスナーポート番号、ネットワークアドレス、SSL情報を指定してください。
IIOPリスナーの定義変更は、Interstage Java EE管理コンソールまたはasadminコマンドで編集できます。

ファイアウォールの連携

ファイアウォールを跨り安全にシステム構築を行う場合、HTTP(S)に準拠したファイアウォール/プロキシサーバを経由してWebアプリケーションでリクエストを受信し、ファイアウォール内でIIOP通信するようにシステムを構築してください。

注意

ファイアウォールを跨りIIOP通信でリモートサーバ上のアプリケーションを呼び出す場合、IIOPリスナーのリスナーポートへのアクセスが許可されるようにファイアウォールの設定を行う必要があります。しかし、この設定はセキュリティ上でリスクが高いため、お勧めしません。(HTTP-IIOPゲートウェイを利用したHTTPトンネリング機能は、Java EE実行環境では使用できません。)

通信データの安全性

IIOP通信で送信されるデータは、SSLにより暗号化を行うことで、盗聴/改ざん/なりすましなどの危険を回避し、情報のプライバシーを守ることができます。また、IIOPの認証機能を提供しています。詳細は、「第6章 Java EE機能のセキュリティ」を参照してください。

スタブ

RMI-IIOPでリモートサーバのアプリケーションを呼び出す場合、リモートインタフェースを実装するスタブを経由します。スタブは、配備時に生成されます。スタブを経由することで、クライアントはリモートサーバで運用されているアプリケーションを、あたかも同一マシン上で運用するアプリケーションのように呼び出すことができます。
Java EE実行環境では、スタブは運用時にメモリ上で動的に生成されます。これを、動的スタブと呼びます。動的スタブを使用する場合、リモートインタフェースが呼出し側のクラスパスに設定されている必要があります。

オブジェクト管理

アプリケーションのオブジェクトと名前の管理は、ネーミングサービスで行われます。ネーミングサービスには、JNDI APIを使用してアクセスします。詳細は、「3.11.1 ネーミングサービス」を参照してください。

例外情報

IIOP通信でエラーが発生した場合に出力される例外情報については、「13.59.6 IIOP通信時の例外情報」を参照してください。