- java.lang.Object
-
- javax.rmi.PortableRemoteObject
-
public class PortableRemoteObject extends Object
サーバー実装オブジェクトは、javax.rmi.PortableRemoteObjectを継承するか、あるいはリモート・インタフェースを実装してexportObjectメソッドを使用して、このオブジェクト自体をサーバー・オブジェクトとして登録します。 toStubメソッドはサーバー実装を受け取り、そのサーバー・オブジェクトへのアクセスに使用できるスタブを返します。 接続メソッドはRemoteオブジェクトをリモート通信可能な状態にします。 unexportObjectメソッドは、サーバー・オブジェクトの登録解除に使われ、サーバー・オブジェクトをガベージ・コレクションで使用できるようにします。 narrowメソッドはオブジェクト参照または抽象インタフェース・タイプを取り込み、それをナロー変換して指定されたインタフェースに一致させようとします。 操作が完了すると指定されたタイプのオブジェクトになり、そうでない場合は例外がスローされます。「RMI-IIOP開発者向けガイド」も参照してください。
-
-
コンストラクタのサマリー
コンストラクタ 修飾子 コンストラクタ 説明 protected
PortableRemoteObject()
exportObject(this)
を呼び出してオブジェクトを初期化します。
-
メソッドのサマリー
すべてのメソッド staticメソッド 具象メソッド 修飾子と型 メソッド 説明 static void
connect(Remote target, Remote source)
リモート通信準備のできたリモート・オブジェクトを作成します。static void
exportObject(Remote obj)
サーバー・オブジェクトがリモート呼出しを受信できるようにします。static Object
narrow(Object narrowFrom, Class narrowTo)
リモート・インタフェースまたは抽象インタフェースのオブジェクトを目的のタイプにキャストできることを確認します。static Remote
toStub(Remote obj)
指定されたサーバー・オブジェクトのスタブを返します。static void
unexportObject(Remote obj)
サーバー・オブジェクトをランタイムから登録解除し、そのオブジェクトがガベージ・コレクションの対象となるようにします。
-
-
-
コンストラクタの詳細
-
PortableRemoteObject
protected PortableRemoteObject() throws RemoteException
exportObject(this)
を呼び出してオブジェクトを初期化します。- 例外:
RemoteException
- エクスポートに失敗した場合。
-
-
メソッドの詳細
-
exportObject
public static void exportObject(Remote obj) throws RemoteException
サーバー・オブジェクトがリモート呼出しを受信できるようにします。 PortableRemoteObjectのサブクラスの場合、このメソッドはコンストラクタが呼び出すので、呼び出す必要はありません。- パラメータ:
obj
- エクスポート対象のサーバー・オブジェクト。- 例外:
RemoteException
- エクスポートに失敗した場合。
-
toStub
public static Remote toStub(Remote obj) throws NoSuchObjectException
指定されたサーバー・オブジェクトのスタブを返します。- パラメータ:
obj
- スタブを必要とするサーバー・オブジェクト。 PortableRemoteObjectのサブクラスであるか、あるいはこれまでにexportObject(java.rmi.Remote)
呼出しのターゲットとなっていることが必要。- 戻り値:
- オブジェクトの最上位派生スタブ。
- 例外:
NoSuchObjectException
- 指定されたサーバー・オブジェクトにスタブを配置できない場合。
-
unexportObject
public static void unexportObject(Remote obj) throws NoSuchObjectException
サーバー・オブジェクトをランタイムから登録解除し、そのオブジェクトがガベージ・コレクションの対象となるようにします。- パラメータ:
obj
- アンエクスポートするオブジェクト。- 例外:
NoSuchObjectException
- リモート・オブジェクトが現在エクスポートされていない場合。
-
narrow
public static Object narrow(Object narrowFrom, Class narrowTo) throws ClassCastException
リモート・インタフェースまたは抽象インタフェースのオブジェクトを目的のタイプにキャストできることを確認します。- パラメータ:
narrowFrom
- チェック対象のオブジェクト。narrowTo
- 目的のタイプ。- 戻り値:
- 目的のタイプにキャストできるオブジェクト。
- 例外:
ClassCastException
- narrowFromをnarrowToにキャストできない場合。
-
connect
public static void connect(Remote target, Remote source) throws RemoteException
リモート通信準備のできたリモート・オブジェクトを作成します。 通常、リモート・メソッドの呼出しでオブジェクトが引数として送信または受信された場合に暗黙的に通信可能な状態になりますが、状況によっては明示的に呼び出してこの動作を行うのに役立ちます。 詳細は、Stub.connect(org.omg.CORBA.ORB)
メソッドを参照してください。- パラメータ:
target
- 接続対象のオブジェクト。source
- すでに接続されているオブジェクト。- 例外:
RemoteException
-source
が接続されていない場合、またはtarget
がsource
以外のORBに接続されている場合。
-
-