|
The Network Is The Computer
TM |
Remote Method Invocation (RMI) enables the programmer to create
distributed Java-to-Java applications, in which the methods of remote
Java objects can be invoked from other Java virtual machines, possibly
on different hosts. A Java program can make a call on a remote object
once it obtains a reference to the remote object, either by looking up
the remote object in the bootstrap naming service provided by RMI or by
receiving the reference as an argument or a return value. A client can
call a remote object in a server, and that server can also be a client
of other remote objects. RMI uses Object Serialization to marshal and
unmarshal parameters and does not truncate types, supporting true
object-oriented polymorphism.
There are three releases:
- JDK 1.2
contains many new RMI enhancements including activation and the
capability for RMI to use custom socket protocols. Check out the JDK 1.2
RMI Enhancements
page for further details.
- JDK 1.1
includes core support for RMI. RMI applets developed with this release
can be run with the appletviewer. Full support in other browsers will
be available as licensees support JDK 1.1. See the JDK 1.1
RMI Documentation for complete details.
- RMI on JDK 1.0.2 is an interim release only. This release supersedes
the Prebeta release, and allows applets to be run in the appletviewer,
a special RMI version of HotJava, and Netscape 3.01, which is JDK 1.0.2
based. This release provides the same RMI APIs as the JDK1.1 release.
Available now from the Distributed Systems
download page.
Object Serialization extends
the Java Input/Output classes with support for objects. Object
Serialization supports the encoding of objects and the objects
reachable from them into a stream of bytes and it supports the
complementary reconstruction of the object graph from the stream.
Serialization is used for lightweight persistence and for communication
via sockets or Remote Method Invocation (RMI). The default encoding of
objects protects private and transient data, and supports the evolution
of the classes. A class may implement its own external encoding and is
then solely responsible for the external format.
For More Information About Java RMI
Getting Started
Using Custom Socket Factories
RMI and SSL
Object Activation
Documentation
Examples - Real World Applications using Java RMI
Specification
White Paper
RMI and Serialization FAQ
RMI Networking FAQ
Archive of RMI-USERS Mailing List
Comments or questions? Write to us.
|