Documentation Contents JavaTM IDL: Changes between JDK 1.2 and J2SE 1.3

# JavaTM IDL

> 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 Java ORB for distributed computing using IIOP communication.

> Note: This release of the JavaTM 2 Platform, Standard Edition, includes RMI-IIOP, a technology that integrates Java RMI (Remote Method Invocation) and Java IDL. RMI-IIOP supersedes Java IDL for most purposes, by enabling you to write CORBA interfaces directly in Java rather than in the OMG-specified IDL (Interface Definition Language) used with Java IDL. For details, see the RMI-IIOP documentation.

## Where do I get the IDL-to-Java compiler?

> The J2SDK, v.1.3, version of Java IDL includes a new version of the IDL-to-Java compiler, named `idlj`. The `idlj` compiler supports new CORBA-standard features required for RMI-IIOP. The `idlj` compiler is placed in the SDK's `.bin` directory by the installer.

> To download the Java[tm] 2 Platform, Standard Edition (J2SE[tm]) version 1.3, which includes the `idlj` compiler, follow the link. Please note that the IDL-to-Java compiler is no longer a separate download, as it was in previous releases of the Java[tm] platform.

> For better interoperability, see the note about not using an interface name for a module name in OMG IDL code.

## Should I use Java IDL or RMI-IIOP?

> 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 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.

> RMI-IIOP (Remote Method Invocation over Internet Inter-ORB Protocol) is for Java programmers who want to program to the 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 JavaBeans (EJB), since the remote object model for EJBs is RMI-based.

## Java IDL FAQ

- Java IDL FAQ

## Essential Java IDL API

- package org.omg.CORBA
- package org.omg.CosNaming
- org.omg.CORBA.ORB
- `idlj`, the IDL-to-Java compiler documentation

## Tutorials

- Getting Started with Java IDL: The "Hello World" Tutorial (beginner)
- Example: Hello World (higher-level overview)

## Extending "Hello World"

- Example: Persistent State and User Exceptions
- Example: Callback Objects
- Example: Implementation Inheritance
- Running the Hello World Example on 2 machines

## Concepts

- Distributed Application Concepts
- Using CORBA and Java IDL
- Glossary

## Programming Guide

- Exceptions
- Initialization
- Naming Service
- Dynamic Skeleton Interface
- Mapping IDL to the Java Programming Language

## For more information

> The OMG is the official source of information for all CORBA and IIOP related information. The CORBA 2.0 Specification is available electronically in postscript and pdf format.

Copyright © 1996-2000 Sun Microsystems, Inc. All Rights Reserved. Send questions or comments to: JavaIDL@eng.sun.com. | Java Software