JavaTM 2
Platform
Std. Ed. v1.4.0

javax.rmi
クラス PortableRemoteObject

java.lang.Object
  |
  +--javax.rmi.PortableRemoteObject

public class PortableRemoteObject
extends Object

サーバ実装オブジェクトは、javax.rmi.PortableRemoteObject を継承するか、あるいはリモートインタフェースを実装して exportObject メソッドを使ってこのオブジェクト自体をサーバオブジェクトとして登録します。toStub メソッドはサーバ実装を受け取り、そのサーバオブジェクトへのアクセスに使用できるスタブを返します。接続メソッドは Remote オブジェクトをリモート通信可能な状態にします。unexportObject メソッドは、サーバオブジェクトを登録解除してガベージコレクションに使われます。narrow メソッドはオブジェクト参照または抽象インタフェースタイプを取り込み、それをナロー変換して指定されたインタフェースに一致させようとします。操作が完了すると指定されたタイプのオブジェクトになり、そうでない場合は例外がスローされます。


コンストラクタの概要
protected PortableRemoteObject()
          exportObject(this) を呼び出してオブジェクトを初期化します。
 
メソッドの概要
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)
          サーバオブジェクトをランタイムから登録解除し、そのオブジェクトがガベージコレクションの対象となるようにします。
 
クラス java.lang.Object から継承したメソッド
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

コンストラクタの詳細

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 が接続されていない場合、または targetsource ではなく別の ORB にすでに接続されている場合

JavaTM 2
Platform
Std. Ed. v1.4.0

バグの報告と機能のリクエスト
これ以外の API リファレンスおよび開発者用ドキュメントについては、 Java 2 SDK SE 開発者用ドキュメントを参照してください。 開発者向けの詳細な解説、概念の概要、用語の定義、バグの回避策、 およびコード実例が含まれています。

Java、Java 2D、および JDBC は米国ならびにその他の国における米国 Sun Microsystems, Inc. の商標もしくは登録商標です。
Copyright 1993-2002 Sun Microsystems, Inc. 901 San Antonio Road
Palo Alto, California, 94303, U.S.A. All Rights Reserved.