Question

As far as I know there were problems with incompatible CORBA implementations in the past resulting from different interpretations of the specification. How is the situation today? Can I expect two different implementations to interact without problems?

Was it helpful?

Solution

I worked with corba stuff for the last 8 years. Its a standard (ASAM ODS OO API) and uses Corba to implement the API between server and clients.

We din't find incompatibilities till a long time. (java, jorb, mico, omniorb / C++ / Java)

When we started there were mainly problems with the nameservices (different port, ...) but we didn't figure out any real incompatibility till then.

I think the difference between the different orb implementations may be the features that are represented by the implementation.

What is still there is that speed of the different implementations differ.

OTHER TIPS

At the time I was testing Sun's (now Oracle's) CORBA implementation (Java SE 1.4.0) compatibility with my own, I have discovered that Sun's CORBA it is not properly switching from big to little endian (CORBA must be capable of processing both big and little endian messages, determining the byte order from the header). C-based implementation that send the first message using little endian default would have not been able to talk.

The issue has been reported as bug 4119129 and seems fixed now. I am posting because maybe somebody has tried at that time and remembers that it did not work with.

At that time, this was one of the reasons to use JacORB instead.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top