RMI-IIOP (Remote Method Invocation - Internet
Inter-ORB Protocol)
Initially programmers had to choose between RMI
and CORBA (Java IDL) for distributed programming solutions. With
each mechanism providing certain exclusive features it was often
a case of sacrificing certain functionality for others when deciding
upon the mechanism to use. Seeing the need for a mechanism that
combined the best features of RMI and Java IDL JavaSoft produced
the RMI-IIOP mechanism [3].
RMI-IIOP combines the programming ease of RMI with JavaIDL's CORBA-compliant
interaction with software written in other languages. By adhering
to a few restrictions, RMI programmers can now use CORBA's IIOP
communications protocol to communicate with clients written entirely
in Java or made up of components written in other CORBA-compliant
languages [4].
RMI-IIOP comes with a new rmic compiler that can generate stubs,
skeletons and emit IDL.
Implementation
RMI-IIOP implementation involves the following steps:
1. Define remote interface(s) for the Java server
object(s)
2. Create implementation class(es) for the interface(s)
3. Write Java client(s)
4. Generate Stub(s) and Tie(s) for the server(s) that support
the IIOP using RMIC
5. Compile the server(s) and client(s)
6. Start the Naming Server (rmiregistry)
7. Start the Java server(s)
8. Run the client(s)
The RMI-IIOP implementation is illustrated in Figure
5.

Figure 5. RMI-IIOP implementation
Overview
RMI-IIOP brings together the best of RMI and Java IDL to produce
a mechanism that boasts the programming ease and CORBA compliant
interaction software written in other languages. In addition,
RMI-IIOP offers easy migration from existing RMI code and seamless
integration into CORBA infrastructure via the use of IIOP.
Next Page