omniORB is an Object Request Broker (ORB) which implements version 2.6 of the Common Object Request Broker Architecture (CORBA). It supports the C++ and Python language bindings, is fully multithreaded, uses IIOP as the native transport, and comes complete with a COS Naming Service. omniORB is one of the fastest available C++ ORBs.
TAO (The ACE ORB) is an advanced, CORBA-compliant, real-time Object Request Broker (ORB). It is designed to meet the stringent Quality of Service (QoS) requirements of real-time applications, resulting in superior end-to-end predictability, efficiency, and scalable performance. It implements the latest CORBA specifications from the OMG. It is built with components from the ADAPTIVE Communication Environment (ACE) C++ framework, resulting in a highly extensible architecture, adaptability to a wide variety of situations, and portability across a broad range of platforms. Although TAO was designed to meet the demanding requirements of real-time applications, it is also well-suited for general-purpose CORBA applications.
XmlBlaster is XML based MOM (Message oriented Middleware) with a lot of features. It is a publish/subscribe and point-to-point MOM server which exchanges XML-encoded messages. Communication with the server is based on CORBA (using JacORB), RMI, XML-RPC, native socket, or a persistent HTTP plugin. Subscribers can use XPath expressions to filter the messages they wish to receive and add their own MIME-based filter plugins. C/C++, Java, Perl, Python, VisualBasic.net, C#, and PHP client demos are included in the xmlBlaster test suite, and Tcl and Python demo clients are scheduled. XmlBlaster also provides a browser callback framework, allowing browsers (Netscape, Mozilla, MSIE) to receive instant callbacks over a persistent http connection. A security plugin framework allows authentication/authorization in many ways. Currently there are LDAP- and passwd-based plugins available.
The SOAP to CORBA bridge/translator is written entirely in C++ and shows that it is indeed possible to do a generic translation of SOAP requests to CORBA method invocations and vice versa. This is implemented by using the CORBA Interface repository to match the incoming SOAP request to the corresponding CORBA service, build the dynamic invocation of the CORBA service, and generate the SOAP response (or possibly SOAP fault in the case of a CORBA user exception, for instance).
ACDK is a development framework with a similar target of Microsoft's .NET or Sun's ONE platform, but it uses C++ as a core implementation language. It implements the standard library packages, including acdk::lang, acdk::lang::reflect, acdk::util, acdk::io, acdk::text (including regexpr), acdk::net, acdk::sql, acdk::xml, and more. Flexible allocator/garbage collection, threading, and Unicode are implemented in the core of ACDK. Extensions make C++ objects available for reflection, serialization, aspect-oriented class attributes, and [D]ynamic [M] ethod [I]nvocation. This DMI acts as an universal object oriented call interface to connect C++ with scripting languages (Java, Perl, Tcl, Python, Lisp, Visual Basic, and VBScript) and standard component technologies (CORBA and COM).
QoS Enabled Distributed Objects implements a CCM and adds some more advanced features such as QoS extensions and interoperability with other middleware technologies. Please note that you also need the generator for implementing your own components, and it can be found at the same place.
omniEvents is a cross-platform server that enables CORBA applications to communicate through asynchronous broadcast channels (rather than direct method calls). It is a small, efficient implementation of the Object Management Group's Event Service specification designed to work with omniORB.