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

> This release of the JavaTM 2 Platform, Standard Edition, includes RMI-IIOP, a technology that integrates Java RMI (Remote Method Invocation) and Java IDL. As a result, Java IDL now uses a new version of the IDL-to-Java compiler. This compiler supports new CORBA-standard features required for RMI-IIOP. A summary of the changes that have occurred as a result are outlined below.

> RMI-IIOP supersedes Java IDL for most purposes, by enabling you to write CORBA-compliant 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.

## Java IDL API changes

> The following list provides a summary of changes that occurred in Java IDL between the release of JDK 1.2 and J2SE v.1.3.

> - NEW! IDL-to-Java compiler, `idlj`

>   The tool that generates Java bindings froma given IDL file has been renamed from `idltojava` to `idlj`. The `idltojava` compiler was a separate download in JDK 1.2, the `idlj` compiler is available as part of the J2SE v.1.3 download and can be found in the `/bin` directory.

> - NEW! IDL-to-Java compiler is 100% Pure Java

>   The `idltojava` compiler was hard-coded to use a default C++ preprocessor. When using the `idltojava` compiler, it was necessary to add the path to the preprocessor prior to running the `idltojava` compiler. The `idlj` compiler is 100% pure Java, so no preprocessor is necessary, and no special care need be taken to set up a path to a preprocessor.

> - NEW! More IDL-to-Java compiler options

>   The `idltojava` compiler generated both client and server-side bindings by default. The `idlj` compiler generates only client-side bindings by default (making the assumption that client and server will reside on different hosts). You can easily emulate the default of the previous compiler by using the `-fall` option when compiling IDL files.

> - NEW! Mapping for interfaces

>   The `idltojava` compiler generated five files in a subdirectory with the same name as the IDL module. In accordance with the OMG IDL to Java Language Mapping Specification, Section 1.12, Mapping for Interfaces, the `idlj` compiler generates six files. The difference is that the signature interface no longer contains the method that corresponds to the interface defined in the IDL file. Instead, the operations interface, `<interface>Operations.java`, is generated in the `<module>` subdirectory and contains the methods defined by the interface. The operations interface is shared by both stubs and skeletons.

> - NEW! Support for IDL value types

>   The new IDL-to-Java compiler, `idlj`, support Java mapping to IDL value types, as described in the OMG IDL to Java Language Mapping Specification, Section 1.13, Mapping for ValueType.

> For more information on the `idlj` compiler, link to idlj - The IDL-to-Java Compiler (RMI-IIOP version).

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