After reading this chapter, you should:
understand the basic principles of CORBA;
appreciate the importance of CORBA in providing a method for implementing
distributed objects in a platform-independent and language-independent manner;
know how to create IDL specifi cations;
know how to create server processes for use with the Java IDL ORB;
know how to create client processes for use with the Java IDL ORB;
know how to create and use CORBA factory objects.
Though RMI is a powerful mechanism for distributing and processing objects in a
platform-independent manner, it has one signifi cant drawback—it works only with
objects that have been created using Java. Convenient though it might be if Java were
the only language used for creating software objects, this simply is not the case in the
real world. A more generic approach to the development of distributed systems is
offered by CORBA (Common Object Request Broker Architecture), which allows
objects written in a variety of programming languages to be accessed by client
programs which themselves may be written in a variety of programming languages.
Background and Basics
CORBA is a product of the OMG (Object Management Group), a consortium of
over 800 companies spanning most of the I.T. industry (with the notable exception
of Microsoft!) that is dedicated to defi ning and promoting industry standards for
object technology. The fi rst version of CORBA appeared in 1991 and the current
version (at the time of writing) is 3.3, which was released in November of 2012.
In keeping with the ethos of the OMG, CORBA is not a specifi c implementation,
but a specifi cation for creating and using distributed objects. An individual