I was reading some
comments from Sun's executive VP of Software, Rich Green, about SOA and our strategy and it got me thinking.
SeeBeyond pioneered the idea of building composite applications and provided the tools for doing this with the
Integrated Composite Application Network (ICAN). After being acquired by Sun the products in ICAN were combined with several others from Sun to create the
Java Composite Application Platform Suite.
Sun is now pioneering the next generation of composite application building by including a JBI engine in the Application Server and providing the associated tooling to build applications that include traditional Java EE programming along side the new JBI programming model. What this provides for is allowing the Java developer to create Java EE components in exactly the way they are used to, but then when appropriate, augment this traditional programming by composing applications made up of services written in Java but also other languages enabled by the JBI model. Let's go through an example.
A programmer may have existing services written in Java, whether EJBs or POJOs, or may need to build new services where Java is the best language to use to do that. Once these services are created though, using Java to stitch them together in a loosely coupled way isn't always the best or most efficient approach. And there are some services that while possible to implement in Java are more easily and flexibly done using special purposes languages or technologies like a Business Rule Engine (BRE). Stitching the application together using something like WS-BPEL is a much better approach and this can not only compose Java services but other services created in other languages.
Sun released the tools and servers to accomplish this earlier this year at JavaOne. The JBI runtime, a BPEL Service Engine, HTTP/SOAP Binding Component, and Java EE Service Engine have been included in the
Java EE 5 SDK and tooling for composing applications using those components is part of the
NetBeans 5.5 Enterprise Pack. An update of both is due out later this year but a beta is available now and the best way to get it is to get the
Java EE 5 SDK Tools Bundle.
What is in this bundle is only the beginning. Everything that is part of that bundle is being developed in open source on
java.net and as part of the
NetBeans Project and more JBI components will be added and made available as part of those projects. Potential components include BRE, Enterprise Information Integration (EII), XSLT, and event processing Service Engines, and JMS, File, JDBC, e-mail, and ERP Binding Components.
And it is really the tooling that is key. The tooling is what makes the developer productive and the ability to combine traditional Java development with composing applications using JBI Service Engines and Binding Components in the same IDE is critical and this is what the tooling above provides. This carries on what SeeBeyond had started with the single IDE in ICAN and Java CAPS and takes it to the next level.
If you are interested in seeing the next generation of composite application development, I encourage you to download the Java EE 5 SDK Tools Bundle and give it a try!