Q: What is !OpenORB?

I've seen references to a tool called !OpenORB in the documentation and on these Wiki pages. What is it, and why do I need it?

A: It is an open source CORBA 2.3 implementation written in pure Java.

We use !OpenORB with Tweek as a Java implementation of CORBA 2.3. The ORB that comes with the JDK/JRE 1.3 (Java IDL) does not implement CORBA 2.3, and thus, we need !OpenORB for correct interoperability with the a CORBA 2.3-compliant C++ ORB.

Downloading

Downloading !OpenORB has become somewhat complicated. Originally, it was available from http://openorb.exolab.net/, but links on this site no longer work. The community version of !OpenORB (version 1.3.0 and beyond) can be downloaded from SourceForge. The link is:

CORBA Details

The key is the use of IIOP 1.0 (Internet Inter-ORB Protocol) and POA (the Portable Object Adapter). These features allow ORBs from different vendors to communicate. By using POA and IIOP in Tweek, we get maximum flexibility because we can use any combination of Java and C++ ORBs, so long as they implement these protocols correctly.

Note that if you are using JDK 1.4, !OpenORB is not required. Java IDL 1.4 implements CORBA 2.3, and thus, no replacement software is required.

Here is a summary of the ORBs we have used with Tweek:

  • Java
    • Java IDL 1.4 (comes with JDK/JRE 1.4)
    • !OpenORB 1.2.0, 1.2.1, and 1.3.0
    • ORBacus 4.x
    • !JacORB
  • C++
    • omniORB 3.0.4, 3.0.5, 4.0 beta 1, 4.0 beta 2, 4.0.0, 4.0.1, 4.0.2

Back to: LiveFaq