JavaTM Remote Method Invocation Specification
JavaTM Remote Method Invocation (RMI) is a distributed object model for the Java language that retains the semantics of the Java object model, making distributed objects easy to implement and to use. The system combines aspects of the Modula-3 Network Objects system and Spring's subcontract and includes some novel features made possible by Java. The RMI system is easily extensible and maintainable.
JDK 1.2 Beta4, July 1998
| | | |
|
1
Introduction
|
-
1.1
Overview
-
1.2
System Goals
| | | |
|
2
Java Distributed Object Model
|
-
2.1
Definition of Terms
-
2.2
The Distributed and Nondistributed Models Contrasted
-
2.3
RMI Interfaces and Classes
-
2.4
Implementing a Remote Interface
-
2.5
Type Equivalency of Remote Objects with Local Stub
-
2.6
Parameter Passing in Remote Method Invocation
-
2.7
Exception Handling in Remote Method Invocation
-
2.8
Object Methods Overridden by the RemoteObject Class
-
2.9
The Semantics of Object Methods Declared final
-
2.10
Locating Remote Objects
| | | |
|
3
System Architecture
|
-
3.1
Overview
-
3.2
Architectural Overview
-
3.3
The Stub/Skeleton Layer
-
3.4
The Remote Reference Layer
-
3.5
The Transport Layer
-
3.6
Thread Usage in Remote Method Invocations
-
3.7
Garbage Collection of Remote Objects
-
3.8
Dynamic Class Loading
-
3.9
Security
-
3.10
Configuration Scenarios
-
3.11
RMI Through Firewalls Via Proxies
| | | |
|
4
Client Interfaces
|
-
4.1
The Remote Interface
-
4.2
The RemoteException Class
-
4.3
The Naming Class
| | | |
|
5
Server Interfaces
|
-
5.1
The RemoteObject Class
-
5.2
The RemoteServer Class
-
5.3
The UnicastRemoteObject Class
-
5.4
The Unreferenced Interface
-
5.5
The RMISecurityManager Class
-
5.6
The RMIClassLoader Class
-
5.7
The LoaderHandler Interface
-
5.8
RMI Socket Factories
-
5.9
The RMIFailureHandler Interface
-
5.10
The LogStream Class
-
5.11
Stub and Skeleton Compiler
| | | |
|
6
Registry Interfaces
|
-
6.1
The Registry Interface
-
6.2
The LocateRegistry Class
-
6.3
The RegistryHandler Interface
| | | |
|
7
Remote Object Activation
|
-
7.1
Overview
-
7.2
Activation Protocol
-
7.3
Implementation Model for an "Activatable" Remote Object
-
7.4
Activation Interfaces
| | | |
|
8
Stub/Skeleton Interfaces
|
-
8.1
The RemoteStub Class
-
8.2
The RemoteCall Interface
-
8.3
The RemoteRef Interface
-
8.4
The ServerRef Interface
-
8.5
The Skeleton Interface
-
8.6
The Operation Class
| | | |
|
9
Garbage Collector Interfaces
|
-
9.1
The Interface DGC
-
9.2
The Lease Class
-
9.3
The ObjID Class
-
9.4
The UID Class
-
9.5
The VMID Class
| | | |
|
10
RMI Wire Protocol
|
-
10.1
Overview
-
10.2
RMI Transport Protocol
-
10.3
RMI's Use of Object Serialization Protocol
-
10.4
RMI's Use of HTTP POST Protocol
-
10.5
Application Specific Values for RMI
-
10.6
RMI's Multiplexing Protocol
| | | |
|
A
Exceptions In RMI
|
-
A.1
Exceptions During Remote Object Export
-
A.2
Exceptions During RMI Call
-
A.3
Exceptions or Errors During Return
-
A.4
Naming Exceptions
-
A.5
Other Exceptions
| | | |
|
B
Properties In RMI
|
-
B.1
Server Properties
-
B.2
Activation Properties
-
B.3
Other Properties
CONTENTS | PREV | NEXT
Copyright © 1997-1998 Sun Microsystems, Inc. All Rights Reserved.