JavaTM IDL technology ("Java IDL")
adds CORBA (Common Object Request Broker Architecture)
capability to the
Java
platform, providing standards-based interoperability and
connectivity. Java IDL enables distributed Web-enabled Java
applications to transparently invoke operations on remote
network services using the industry standard IDL (Object
Management Group Interface Definition Language) and IIOP (Internet
Inter-ORB Protocol) defined by the Object Management Group.
Runtime components include a Java ORB for distributed
computing using IIOP communication.
With which CORBA specifications does J2SE 5.0 comply?
Should I use Java IDL or Java RMI-IIOP technology?
This is a fundamental question and it's important to understand the
distinction between these two ways of integrating the Java programming language
with CORBA.
Java IDL technology is for CORBA programmers who want to program in the Java programming
language based on interfaces defined in CORBA Interface Definition Language
(IDL). This is "business as usual" CORBA programming, supporting Java in exactly
the same way as other languages like C++ or COBOL.
Java Remote Method Invocation over Internet
Inter-ORB Protocol ("RMI-IIOP") technology is for
Java programmers who want to program to the Java Remote Method Invocation ("Java RMI")
interfaces, but use IIOP as the
underlying transport. RMI-IIOP provides interoperability with other CORBA
objects implemented in various languages - but only if all the remote interfaces
are originally defined as Java RMI interfaces. It is of particular interest to
programmers using Enterprise JavaBeansTM
(EJBTM) technology, since the EJB remote object model
is based on Java RMI technology.
Most of the tutorials are
variations on the basic distributed "Hello World"
application.
Introductory-Level Tutorials
The following
documents provide introductory-level information on creating applications that
use Java IDL. All use the POA-server side model. The differences are in the
server implementations.
In order to best understand the material, progress through the
examples in the order presented here.
Other server-side models may be created using J2SE. If you'd like to use other server-
side models, refer to these tutorials. Both of these tutorials use a transient server
implementation.
The tutorials listed in this section are for developers who understand the material in
the introductory-level tutorials, and are looking for more complex material.
These tutorials are for experienced developers. The descriptive material is reduced,
the sample code is commented for better understanding of the material.
package org.omg.CORBA - provides the mapping
of the OMG CORBA APIs to the Java[tm] programming language
package org.omg.CosNaming
- provides the
naming service for Java IDL
package org.omg.PortableServer -
provides classes and interfaces for making the server side of your applications portable
across multivendor ORBs
package
org.omg.PortableInterceptor - provides a mechanism to register ORB hooks through which
ORB services can intercept the
normal flow of execution of the ORB
package org.omg.DynamicAny - provides
classes and interfaces to enable Any values to be dynamically interpreted
(traversed)
and constructed through DynAny objects
org.omg.CORBA.ORB - provides APIs
for the CORBA Object Request Broker features
Java IDL Tools
idlj, the
IDL-to-Java compiler (command-line documentation)
orbd - a daemon process
containing a Bootstrap Service, a Transient
Naming Service, a Persistent Naming Service, and a Server Manager
servertool -
the ease-of-use interface
for application programmers to register, unregister, startup,
and shutdown a server.
tnameserv - the Transient Java IDL Naming
Service (provided for backward compatibility)
For more information
The OMG is the official
source of information for all CORBA and IIOP related information.
The CORBA 2.3.1 Specification is available electronically
from formal/99-10-07.pdf.
The
URLs for the CORBA specifications may change. If this link is broken, link to
http://www.omg.org and search the specifications.
For more information on which OMG specifications are implemented in this release of the
Java
platform, see the compliance
document.
For information on product limitations in this release of the Java IDL/RMI-IIOP
technologies, see
Java IDL Product Limitations.