Remote Method Invocation (RMI)

Java Remote Method Invocation (RMI) is a Java application programming interface that allows mechanism through which an object running in one Java virtual machine

Remote Method Invocation (RMI)

Remote Method Invocation (RMI)

     

Java Remote Method Invocation (RMI) is a Java application programming interface that allows mechanism through which an object running in one Java virtual machine can invoke methods on an object running in another Java virtual machine by sharing resources and processing load across systems. RMI enables remote communication between programs written in the Java programming language. Communication is done by exchanging java object on the network. Exchanging of java object through the network requires marshelling and unmarshelling of parameters to which RMI achives by using object serialization.

RMI allows uses of any type of Java object - even if the client or server has never encountered it before. RMI allows loading of new object types as required by both client and server.

Java provides two common implementations of the API. The original implementation depends on Java Virtual Machine (JVM) class representation mechanisms therefore only supports making calls from one JVM to another. Java Remote Method Protocol (JRMP) is the protocol used to implement RMI. Later CORBA was developed to support code running in a non-JVM context.

The original RMI API was developed to support different implementations, like HTTP transport. Later some work on CORBA, in order to add a pass by value functionality, to support the RMI interface. Still, the implementation to both RMI-IIOP and JRMP are not fully identical in their interfaces. RMI APIs comes under the package java.rmi

Note: Java versions up to 5.0 necessitates of compiling RMI stubs in a separate compilation step using rmic. While Version 5.0 and beyond  does not require this step.

To know in detail about RMI click on the link:

http://www.roseindia.net/software-tutorials/detail/6076