JavaTM 2 Platform
Standard Ed. 5.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 メソッドを参照してください。

パラメータ:
target - 接続対象のオブジェクト
source - すでに接続されているオブジェクト
例外:
RemoteException - source が接続されていない場合、または targetsource ではなく別の ORB にすでに接続されている場合

JavaTM 2 Platform
Standard Ed. 5.0

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

Copyright 2004 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms. Documentation Redistribution Policy も参照してください。