问题
We are currently using MICO to establish the communication between a server and a client, where the client is a simulator written in C++ and the server is a java program displaying an animation of what happens in the simulation. It seems that the developemt of MICO has slowed down to an almost halt and bugs that only allow us to hack around them (as we don't have the time to first figure out which parts of MICO are responsible for codegeneration and so on) keep us from making real progress.
So, does any one of you know of a good drop-in replacement? We would like to have the following:
- The compiler can generate both C++ and Java-Code from the idl.
- The project should still show considerable support.
- The implementation should be open-sourced (GPL or BSD, or something alike), as we use our programs to teach students as well.
- The migration from MICO should be as easy as possible. (This is not a hard requirement, but would be a good thing)
I found some other CORBA implementations, e.g. TAO, but I didn't find any of which I could say that they are still supported. Correct me if I am wrong here.
回答1:
I don't know where CORBA or MICO in particular has gone in the last 5 years, but back then a drop in replacement was not really possible, since differences between vendors where still there.
Not necessarily API differences (POA, etc.) but
- in implementation behavior,
- in custom extensions which were required to make it work in a real-world environment (threading, load balancing, security, etc.),
- in how the development tools worked
- and also about the whole deployment or runtime story.
We had Orbix ASP/2000/Whatever and ORBacus which were interchangeable having a small compatibility layer, some Makefile framework to hide differences in tools (e.g. the IDL compiler) and some scripts for wrapping ORB specific processes.
Unfortunately, ORBacus has long been bought by (then) IONA, which already make Orbix. IONA itself has been bought by someone else (I forgot). The original authors of ORBacus, plus some devs from IONA Orbix, changed their ways somewhat and produced Ice, which is not CORBA but somewhat alike - of course without the glitches ;-)
Concerning TOA, I think it would be the "best" choice concerning still being developed as it is driven by research on the Washington University. But last time I looked, they didn't have Java implementation but people seemed to use JacORB.
Maybe all this helps you little, unless it brings even more confusion :-)
回答2:
The Free CORBA® Downloads page might be of interest to you.
回答3:
Just naming:
- orbit2 1, also pyorbit etc.
- omniORB
TAO (has already been mentioned)
1 On my Ubuntu box,
apt-rdepends -r liborbit2
returns 5530 lines...
回答4:
TAO as C++ ORB is still actively supported and developed (see http://www.cs.wustl.edu/~schmidt/commercial-support.html). For Java I would propose JacORB.
On http://www.orbzone.org there is an overview of available corba implementations.
来源:https://stackoverflow.com/questions/7038405/drop-in-replacement-for-mico-corba