RMI (JRMP) サーバーを RMI IIOP で呼び出すことはできますか?
RMI IIOP は、corba を使用した言語間通信に使用されることは知っていますが、JRMP を使用して実装された RMI サーバーを RMI IIOP クライアントから呼び出すことはできますか?
これは、RMI (JRMP) レジストリ ホストの IP アドレスを使用することで可能になると思います。
いいえ、その質問は意味がありません。RMI サーバーはそのスタブを介して呼び出され、プロトコルはクライアントではなくスタブによって実装されます。
ただし、同じオブジェクトを RMI/JRMP リモート オブジェクトと RMI/IIOP リモート オブジェクトの両方としてエクスポートするには、両方のクラスのメソッドをどちらUnicastRemoteObject
も拡張せずPortableRemoteObject
に呼び出し、exportObject()
RMI レジストリと COSNaming サービスの両方に登録します。rmic
(必要に応じて、 の前文を参照UnicastRemoteObject
) との両方を実行しrmic -iiop
ます。
次に、レジストリ経由で検索すると RMI/JRMP スタブが取得され、COSNaming サービス経由で検索すると RMI/IIOP スタブが取得されます。