Java remote method invocation: Difference between revisions

Content deleted Content added
mNo edit summary
Fixed typo
Tags: Reverted Visual edit Mobile edit Mobile web edit
Line 1:
[[File:RMI-Stubs-Skeletons.svg|thumb|right|400px|A typical implementation model of Java-RMI using [[Class stub|stub]] and [[Distributed object communication#Skeleton|skeleton]] objects. Java 2 SDK, Standard Edition, v1.2 removed the need for a skeleton.]]
 
In [[computing]], the '''Java Remote Method Invocation''' ('''Java RMI''') is a [[Java (programming language)|Java]] [[Application programming interface|API]] that performs [[remote method invocation]], the object-oriented equivalent of [[remote procedure call]]scalls (RPC), with support for direct transfer of [[Serialization#Java|serialized]] Java classes and [[Distributed Garbage Collection|distributed garbage-collection]].
 
The original implementation depends on [[Java virtual machine|Java Virtual Machine]] (JVM) class-representation mechanisms and it thus only supports making calls from one JVM to another. The protocol underlying this Java-only implementation is known as Java Remote Method Protocol (JRMP). In order to support code running in a non-JVM context, programmers later developed a [[Common Object Request Broker Architecture|CORBA]] version.
 
Usage of the term '''RMI''' may denote solely the programming interface or may signify both the API and JRMP, [[IIOP]], or another implementation, whereas the term [[RMI-IIOP]] (read: RMI over [[IIOP]]) specifically denotes the RMI interface delegating most of the functionality to the supporting [[CORBA]] implementation.
 
The basic idea of Java RMI, the distributed garbage-collection (DGC) protocol, and much of the architecture underlying the original Sun implementation, come from the "network objects" feature of [[Modula-3]].
 
==Generalized code==