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).
XPLC is a component system that tries to enable the use of components in a pervasive way. It aims to be easy to use, have low speed and size overhead, and be language and platform neutral. Basically, the idea is to leave no excuse for an application not to be component-enabled (being a component and/or using components).
ulxmlrpcpp is a library to perform calls via XML-RPC in an object oriented approach. It is possible to create both client and server applications in multithreaded environments. Unlike other implementations, it does not insist on HTTP for transportation, but might also accept other ways (e.g. a simple serial line with a user-defined protocol). For HTTP as a transportation protocol, the following features are supported: cookies, SSL/TLS, proxy, SSL/TLS over a proxy, and chunked transfers. ulxmlrpcpp is also able to transmit data faster with binary XML.
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.
libfactory++ is a C++ template framework for run-time dynamic type instantiation. You can register single classes or whole hierarchies, and then tell libfactory++ to instantiate objects using the registration key. libfactory++ differs from other factory approaches mainly in its flexibility. First, it can use any constructor a type supports, and allows you to choose (and configure) the constructor to use for each call to create(). Second, it supports custom allocators, allowing you to use, e.g., a memory pool rather than continuous invocations of 'new'.