
27/10/141 /26 MÔN: L P TRÌNH M NG 2Ậ Ạ GV: NGUY N XUÂN VINHỄ
TR NG Đ I H C NÔNG LÂM TP.HCMƯỜ Ạ Ọ KHOA CÔNG NGH THÔNG TINỆ
Java
Remote Method Invocation
Presenter: Nguy n Xuân Vinhễ
Information Technology Faculty
Nong Lam University

27/10/142 /26 MÔN: L P TRÌNH M NG 2Ậ Ạ GV: NGUY N XUÂN VINHỄ
TR NG Đ I H C NÔNG LÂM TP.HCMƯỜ Ạ Ọ KHOA CÔNG NGH THÔNG TINỆ
“The network is the computer”
Consider the following program organization:
SomeClass AnotherClass
method call
returned object
computer 1 computer 2
If the network is the computer, we ought to be able to put the two
classes on different computers

27/10/143 /26 MÔN: L P TRÌNH M NG 2Ậ Ạ GV: NGUY N XUÂN VINHỄ
TR NG Đ I H C NÔNG LÂM TP.HCMƯỜ Ạ Ọ KHOA CÔNG NGH THÔNG TINỆ
Parameter marshalling

27/10/144 /26 MÔN: L P TRÌNH M NG 2Ậ Ạ GV: NGUY N XUÂN VINHỄ
TR NG Đ I H C NÔNG LÂM TP.HCMƯỜ Ạ Ọ KHOA CÔNG NGH THÔNG TINỆ
Calling the remote getDescription method

27/10/145 /26 MÔN: L P TRÌNH M NG 2Ậ Ạ GV: NGUY N XUÂN VINHỄ
TR NG Đ I H C NÔNG LÂM TP.HCMƯỜ Ạ Ọ KHOA CÔNG NGH THÔNG TINỆ
RMI and other technologies
CORBA (Common Object Request Broker Architecture) was used
for a long time
CORBA supports object transmission between virtually any
languages
Objects have to be described in IDL (Interface Definition
Language), which looks a lot like C++ data definitions
CORBA is complex and flaky
CORBA has fallen out of favor
Microsoft supported CORBA, then COM, now .NET
RMI is purely Java-specific
Java to Java communications only
As a result, RMI is much simpler than CORBA

