Wednesday, July 29, 2009

Java Web Services using BPEL

I've been exploring the Web Services implementation in Java, specifically within the GlassFish container.

I ran across this screencast of a Simple BPEL Process with a Web Service Binding. I'm curious what you think of this screencast. Many RESTful Rails and SOAP/ASP.NET developers will laugh at what has to be done to build this "simple" process.

Here are my takes:

A simply insane number of mouse clicks to create the process. I tried counting all the necessary mouse clicks and came up with:
* Create BPEL module project: 9 clicks
* Import XSDs: 14 clicks
* Create WSDL: 18 clicks
* Create BPEL process: 54 clicks
* Create and deploy composite application project: 26 clicks
Or a quick 121 clicks total. I was absolutely stunned at how complex this is. If this seems normal to you, find an ASP.NET web service screencast, or Creating a weblog in 15 minutes, which uses Ruby on Rails.

Tight coupling between the technology and the tool makes for heavy reliance on a vendor. Watching this video, could anybody create this without Netbeans? Recently the NHIN Connect project decided to drop GlassFish ESB and BPEL. Part of the reason cited was that the integrated solution could not keep up with the individual components - the integrated tool could not keep up with GlassFish, open ESB, and Netbeans.

How long would Hello World take in this process? Probably 20 minutes - unacceptable.

BPEL and WS-* seem to be a perfect match for each other. Developers hate the complexity of WS-* (nicknamrf WS-Death Star) , and similarly hate all the overhead/configuration in a Java project. Put two hated technologies together, and then you've got something.

No comments: