EJBs use IIOP (well actually RMI-IIOP) for communication purposes.
The IIOP specifies a standardized interoperability protocol for the Internet, providing �out of the box� interoperation with other compatible ORBs ...
The above quote is taken directly from the
CORBA/IIOP 2.3.1 Specification, formal/99-10-07, item 12.1.4 Internet Inter-ORB Protocol (IIOP) on page 365.
I just want to make the point that EJBs are essentially also "corba components" at least when you consider their communication model. For example, when an ejb deployed on a weblogic appserver "calls" another ejb deployed on a
jboss or websphere appserver which may be running on a completely different OS then the calling ejb, in essence you have two "corba components" communicating with each other.
Java IDL becomes necessary only when
non-java corba components are involved.
Also, if you look in the JDK docs :
http://java.sun.com/javase/6/docs/technotes/guides/idl/corba.html it says :
CORBA technology is an integral part of the Java 2 platform
[ June 08, 2008: Message edited by: Ronald Wouters ]