One of the requirements for EventStore project was ability to access Meta Data information from external Database throw web service mechanism. Thus a different technologies were exploit during this project with a choice of SOAP mechanism.
Our legacy application were running on different UNIXes and written in C++, therefore we're limited in a set of tools to develop SOAP client/server application. Our trials were:
  • servers:
    • J2EE server
    • JBoss server
    • Apache/Tomcat
    • Microsoft-IIS on Windows Server 2003
    all of them demostrated ability to server our needs and we used the Microsoft server due to its tight intergration into underlying theory center infrastructure.
  • clients:
    • AXIS Apache with xerces-c and expat XML parsers
    • Boost/ximol with libcurl unserlying transfer backend
    due usage of C++ for legacy application we're limited in a choice of client software with SOAP support for C++ and found boost/ximol/curl combination a winner because of its simplicity. Although I contributed to port Axis software to Solaris platform at early steps of evalutation process.
Meta Data DB were setup on a separate server with support of various web services for client requests. The client software was written in C++ and integrated into legacy application as a set of stand-alone libraries with dynamic loadable framework. The administrative tasks of feeding Meta Data DB was written in Python to accomodate both automatic snapshot of detector response and usage of different methods for SOAP exchange.