Friday, July 1, 2005 11:27 AM
Can two applications of differing development languages interoperate on the same orb?
For example, can a C++ application communicate with a Java app on the same orb using only IDL interfaces?
Good question. I seem to recall reading on comp.object.corba that it is possible, but not recommended. It's certainly possible for C++ to C++, see the echo colocated client and servant example from the omniORB doc, and since omniORBpy (Python implementation of CORBA) works with the C++ version, there might be a way since you can generate the client side definitions in Python and server side skeletons in C++.
In fact, with CORBA, you could even avoid using IDL (see page 32), but you'd need a good reason. I think this highlights the flexibility of CORBA.
Anyway, your latter idea is usually best way to go. See the java docs has a good diagram.
Doug Schmidt has much more detail, see Fig 10 on page 11 in that document. So in the previous figures, when you see "ORB core" this is what they mean.
For general questions like this, comp.object.corba is a great resource, with many gurus (Steve Vinoski, Douglas Schmidt, Michi Henning, Ciaran McHale, etc):