The K Zone, Home

About Me

K View

Projects

Papers

Gallery

Email

 

 

 
 

The Significance of the Java Language in Distributed Computing - Page 2

 

Back to Contents Page

 
 

 

CORBA - Java IDL (Interface Definition Language)

The CORBA - Java IDL provides standards based interoperability and connectivity through the addition of CORBA (Common Object Request Broker Architecture) [4] capabilities and Java.
Using the industry standard OMG IDL (Object Management Group Interface Definition Language) and IIOP (Internet Inter-ORB Protocol) defined by OMG, Java IDL allows distributed web-enabled Java applications to transparently invoke operations on remote network applications [1].
Runtime components include a fully compliant Java ORB (Object Request Broker) for distributed computing using IIOP communication. Figure 1 shows the architecture of CORBA compliant system.

CORBA Architecture

Figure 1. architecture of CORBA compliant system

Java runtime (often referred to as ORB) is responsible for:

  • All mechanisms required to find the object implementation for the request;
  • Preparing the object implementation to receive the request; and
  • Communicating the data making up the request.

An IDL compiler, conforming to the OMG IDL to Java mapping standard, is included with the Java IDL package. The compiler generates the stubs and skeletons required by the Static Invocation Interfaces (SII). Java IDL supports both Static and Dynamic (requests generated on the fly) Invocation Interfaces [5].

The Java IDL reference implementation uses IIOP as a network protocol but other network protocols are supported.

Implementation
Steps to creating CORBA conformant servers using Java IDL:

1. Write the IDL describing the interface
2. Use the IDL compiler to generate skeletons
3. Implement the servant
4. Write the server
5. Compile

Creating the client for the server:

1. Use the IDL compiler to generate the stubs
2. Write the client code
3. Compile

Overview
Java IDL boasts a number of significant benefits. Key is its support for multiple programming languages that have IDL mapping. This allows interaction between Java-to-non Java applications. To further enhance the range of Java IDL is its use of the standard CORBA IIOP communication protocol. These benefits are attributed to the use of CORBA capabilities in the structure of the Java IDL.
On the downside, the Java IDL lacks services especially security services. It also doesn't implement all the CORBA features, in particular:

  • No support for Dynamic Skeleton Interface (DSI),
  • Multiple Dynamic Invocation Interface request operations are not supported,
  • Unions inside Any and Unions with Boolean discriminators

The following OMG features are not implemented either:

  • New IDL types (except signed and unsigned longlong),
  • Portable Object Adapter (POA)

 

Next Page

 

 

Home | About Me | K View | Projects | Papers | Gallery | Email