目次 | 前の項目 | 次の項目 Java Remote Method Invocation


3.1 スタブとスケルトン

RMI では、リモートオブジェクトであるスタブおよびスケルトンとの通信に、RPC システムで用いられる標準の機構が使われます。スタブとスケルトンリモートオブジェクトのスタブは、リモートオブジェクトに対するクライアントのローカルでの代理、つまりプロキシの役割を果たします。呼び出し側は、リモートオブジェクトに対するメソッド呼び出しを行うローカルスタブ上のメソッドを呼び出します。RMI では、リモートオブジェクトのスタブは、リモートオブジェクトが実装しているリモートインタフェースのセットと同じセットを実装します。

スタブのメソッドは、呼び出されると、次の動作を実行します。

スタブが、パラメータの直列化およびネットワークレベルの通信を隠すことにより、呼び出し側に対してシンプルな呼び出し機構が提供されます。

リモート JVM では、各リモートオブジェクトに対応するスケルトンがあります。Java 2 プラットフォームだけの環境では、スケルトンは必要ありません。スケルトンによって、呼び出しが実際のリモートオブジェクトの実装にディスパッチされます。スケルトンは、メソッド呼び出しを受け取ると、次の動作を実行します。

Java 2 SDK, Standard Edition, v1.2 では、スタブプロトコルが追加され、Java 2 プラットフォームだけの環境ではスケルトンが必要なくなりました。JDK 1.1 でスケルトンによって行われた作業は、総称コードを使って実行されます。スタブおよびスケルトンは、rmic コンパイラによって生成されます。



目次 | 前の項目 | 次の項目
Copyright © 1997-2006 Sun Microsystems, Inc. All Rights Reserved.