The Open-Source Landscape for SOA
At a JavaOne industry panel yesterday, representatives from IBM, Sonic Software, Sun, JBoss, IONA, and LogicBlaze discussed the topic, "What Is Happening With SOA in Open Source?". Here are a few salient points from that session:
- JBoss Enterprise Service Bus (ESB) This project has been in place for five months and aims at working with existing SOA implementations. It will leverage JEMs and consists of such components as architecture, translation, adapters, UDDI repositories, and others. The requirements mandate that the capabilities be portable and extensible.
- Sun Open ESB Launched after JavaOne 2005 at open-esb.dev.java.net, this project is now at Milestone 8 and will release version 1.0 in the fall.
- IONA Celtix This project at www.iona.com/opensource/celtix is fully featured and supports advanced Java technologies with an implementation of JAX-WS 2.0, interoperability with JBI and SCA, and an extensible plug-in API. It leverages JMS as a platform.
- Apache Tuscany Launched in December 2005 at incubator.apache.org/projects/tuscany, this project's initial code was contributed by BEA and IBM. The implementations, which are in Java, C++, and PHP languages, focus on managing the complexity associated with large-scale systems and enterprise applications. See the specifications.
- Apache Synapse This project is a mediation framework for Web services. A 1.0 release is due later this year. For details, see incubator.apache.org/synapse.
- LogicBlaze FUSE The bottom line: SOA is about connecting systems. FUSE is based on Apache technologies. See www.logicblaze.com/fuse_features.jsp.
Also, Q&A exchanges with the panelists pointed out the following:
- The most important core concepts for SOA are flexibility, control of complexity, and ubiquity.
- Interoperability is extremely important and needs work. It's all about integration, and support for portability is a must.
- SOA is not distributed objects.
- What about a hardware-centric strategy? SOA is about what capabilities you need. Even if you use hardware, you must think about the process pipeline.
- Standards for annotating WSDL are in the works.
- BPEL is useful for orchestration. However, it has restrictions and the Java language, rather than XML, could well be an alternative.