Stonehenge is a set of example applications for Service Oriented Architecture that spans languages and platforms and demonstrates best practise and interoperability.
Why Apache Stonehenge ?
The aim of the Stonehenge project is to develop a set of sample applications to demonstrate seamless interoperability across multiple underlying platform technologies by using currently defined W3C and OASIS standard protocols. By having a set of sample applications, with multiple language and framework implementations will become a useful and important part of the SOA landscape. It will:
* illustrate and develop best practice for interoperable applications that communicate via distributed protocols,
* demonstrate interoperability between platforms,
* provide sample code upon which SOA developers can build,
* help identify interoperability issues and their solutions, and
* build confidence in cross-platform deployment of SOA technologies.
Apache Camel is a powerful rule based routing and mediation engine which provides a POJO based implementation of the Enterprise Integration Patterns using an extremely powerful fluent API (or declarative Java Domain Specific Language) to configure routing and mediation rules. The Domain Specific Language means that Apache Camel can support type-safe smart completion of routing rules in your IDE using regular Java code without huge amounts of XML configuration files; though Xml Configuration inside Spring is also supported.
Apache CXF is an open source services framework. CXF helps you build and develop services using frontend programming APIs, like JAX-WS. These services can speak a variety of protocols such as SOAP, XML/HTTP, RESTful HTTP, or CORBA and work over a variety of transports such as HTTP, JMS or JBI.
Apache ODE (Orchestration Director Engine) executes business processes written following the WS-BPEL standard. It talks to web services, sending and receiving messages, handling data manipulation and error recovery as described by your process definition. It supports both long and short living process executions to orchestrate all the services that are part of your application.
Apache ServiceMix is an Enterprise Service Bus (ESB) that combines the functionality of a Service Oriented Architecture (SOA) and an Event Driven Arthitecture (EDA) to create an agile, enterprise ESB.