HomeDigital EditionSys-Con RadioSearch Java Cd
Advanced Java AWT Book Reviews/Excerpts Client Server Corba Editorials Embedded Java Enterprise Java IDE's Industry Watch Integration Interviews Java Applet Java & Databases Java & Web Services Java Fundamentals Java Native Interface Java Servlets Java Beans J2ME Libraries .NET Object Orientation Observations/IMHO Product Reviews Scalability & Performance Security Server Side Source Code Straight Talking Swing Threads Using Java with others Wireless XML

While I wandered, head down, among the detritus of the post dot­com era, a new world order was forming. When I looked up, I found the technical world rallying under a new banner ­ Web services. Savior or hype? I had to know. What better place to learn than the world's largest Web services event? So off I went to SYS-CON's Web Services Edge 2002 East - International Web Services Conference & Expo. While this was also the JDJEdge and XML Edge Expos, the main thrust was Web services. The keynotes all centered on Web services and most of the Java and XML seminars also had a Web services tilt.

In addition to an expo floor with dozens of vendors offering products and services either supporting Web services or claiming actually to enable them, there were 60 hour-long seminars divided among five tracks ­ Java, Web Services, XML, IT Strategy, and .NET. On top of all this, Sun ran six day-long courses from their Java University Program.

The Monday was dedicated solely to Java University. I took the "Web Component Developer: Certification Fast Path" course about servlet and JSP technology. Any code-level course where you don't get to write code is at a disadvantage. But, for what it was, I found the course very useful. It's stated goal was to cover the material that's required on the certification exam and give pointers for further study. It met this goal admirably, and clarified, for me, a number of issues I was unclear on in these technologies.

Among the technologies that had passed me by was XML. Sure, I've dabbled in it here and there, and edited my deployment descriptor files, but I never did anything meaty with it. So Tuesday found me in the day-long "Developing Solutions Using Java Technology and XML" course, presented by Todd Greanier of Compass Technologies. This course was fantastic. It started with a very thorough XML primer, which was exactly what I needed. Then it detailed which Java technologies are available for use with XML. Overall, I was very impressed with this course and its presentation.

The trade-off for taking this XML course was that I missed the first day of the expo, including the keynotes and all the seminars. Initially, I was a bit concerned about this, but unless day one was very different than the next two, I don't believe I missed too much. While I learned a lot of specific things on the Wednesday and Thursday of the expo, a common thread ran through the keynotes and seminars. Summed up, it might read like this: Web services holds a lot of promise, but there are vast areas that remain undefined. I'm getting a little ahead of myself here, so bear with me awhile and we'll come back to this point.

My original question was: Is the concept of Web services just hype? The simple fact that this conference existed inclined me to believe that there had to be something more. The dozens of vendors I mentioned earlier spent big money developing supporting products. While it is possible that they are merely chasing the hype machine, I sense otherwise. Please don't get me wrong. I'm in no position to declare Web services the be-all and end-all. But there is something there.

Eric Newcomer of IONA gave a very powerful keynote on Wednesday entitled, "Web Services: Integration Technology for the 21st Century." He led with the statement that there are currently too many definitions of precisely what Web services is. While this may be strictly true, a fairly standard definition emerged during Newcomer's speech and in all the other talks I attended. Web services deals with the space between applications. It is a service-oriented architecture using XML and XML-based standards to identify, describe, define, and execute business processes. Newcomer's holy grail is the built-on-the-fly business applications assembled from pluggable Web services sitting out there on the Web ready to go.

Now, this new world of interoperability will have monetary benefits. Without increased ROI, why would our bosses want to spend money on this stuff? Make no mistake, they will be spending the money. A slide from the "Practical Experiences with Web Services and J2EE" seminar quotes surveys from groups like Gartner, Jupiter Media Metrix, and InfoWorld showing that money is heading this way.

One of the primary cost savings with Web services, according to Newcomer, is that it will deskill programmers. We won't need mAd SkILz to integrate applications anymore. Business users can just pick from a menu of functionality and, voilà, a new application. We as developers may bristle at that; you may say that as a developer myself, I'm in outraged denial. But, this review will look at the undefined portions of Web services and the competing standards under development that are meant to address them. Look at that and then tell me how your accounting department is going to make their own applications Web services­enabled. We will still be needed. There really is no alternative.

Another problem with Newcomer's pluggable application vision is that we are nowhere near it. When talking about companies already using Web services, speakers repeatedly coughed up phrases like "most" and "90%" and "the vast majority" in front of "are using it for internal integration rather than exposing business processes to their partners." That this is the case makes sense if you look at what Web services covers and, more tellingly, what it does not.

What everybody seems to agree on is that Web services is currently defined by three core standards: the Simple Object Access Protocol (SOAP), the Web Services Description Language (WSDL) and Universal Discovery, Description and Integration (UDDI). WSDL is based on XML Schema and a WSDL document is an XML document that defines and describes a service. A SOAP message is an XML document with the payload, delivering the data for the service to operate on. And UDDI is the yellow pages of Web services. It tells us where to find the services we need. While SOAP and WSDL are not yet W3C standards, they have become de facto standards and soon will be official.

Sounds great. It is, in a lot of ways. Remember that most companies are still using Web services for internal integration projects. The reality is, most enterprises have disparate systems ­ legacy, J2EE, Microsoft ­ all of which need to speak with each other. If you give them each a way to write SOAP messages for their outgoing information and read SOAP messages for incoming data, you've made them talk with each other. There is value in that.

However, adoption of interenterprise Web services is hampered when you consider what is not defined by Web services. Little things like security, workflow, and transaction support. Web services currently does not address these issues in a standard way. Anne Thomas Manes of Systinet gave a talk on "Developments in Web Services Standards." Manes said that Web services needs to address the following issues before it can be truly ready for prime time: management, security, context, delivery, workflow, choreography, service agreements, service characters, discovering, business system registration, and standards and conventions. That's a pretty hefty list of things in the way of widespread adoption. There are standards bodies addressing these things: W3C, Web Services Interoperability Organization (WS-I), and Organization for the Advancement of Structured Information Systems (OASIS) are just three. OASIS has 30 tech committees alone working on Web services issues.

Manes wasn't the only one to make the point about competing standards. Even "Practical Experiences with Web Services and J2EE," by Hugh Grant of Cape Clear, stressed these issues. The J2EE thrust of that hour was that you can translate your EJBs into Web services using WSDL to describe them, and a Façade pattern to cover multiple beans if they combine to a single service. Beyond that, his talk centered around the standards, which I found very telling.

I can give you the alphabet soup of proposed standards, but I think that would cloud the real issue. You have to realize that many of the standards under development compete with one another. As we know, multiple standards to address a single issue mean there is no standardization. This is a very risky place to be, because it allows vendors to fill in the gaps. This is where Web services is now. There are too many holes, and vendors, such as Actional, SilverStream, and Sonic, all have products that will come in and fill many of those gaps. Many other vendors offer more tailored solutions, some addressing security, others workflow.

Phillip Merrick of webMethods gave a keynote entitled "Enterprise Web Services: An Evolutionary View of Web Services." He made a crucial point ­ the history of many technological issues is this: proprietary solutions (immature), proprietary solutions (mature), standardized solutions (immature). From here, there is a crossroad. We can either go to standards (mature), which would be ideal, or standards plus proprietary adds from vendors, which would be bad. It would fracture the Web services market and more or less kill the interoperability promise.

Web services is at this crossroad. If what I saw on the expo floor is any indication, we are going down the bad road. If you don't want to see that, take Merrick's advice. Demand standardization. Keep your vendors honest. If we can do that, the promise of Web services can be met. And that would be a fine thing indeed.

Even in the face of all the seminars and keynotes, I managed to spend some time on the expo floor, speaking with the vendors, learning a bit about what they had to offer. The two products I found most fascinating deal with XML in general, giving them a broader applicability than the Web services­focused products.

First, there is Allora from HiT Software. Coming in winAllora (COM) and jAllora (Java) flavors, this is a tool for mapping XML to relational data. Even my limited dabbling in XML showed just how different these beasts can be. While it is easy enough to take a JDBC ResultSet and write it all to an XML document, I can see that this would get very tedious for more than the odd table or two. The Graphical Mapper shows your XML Schema or DTD on one side and your database schema on the other, allowing you to map your relationships at design time. Plus, Allora comes with mapping, databinding, and messaging APIs to make it useful at runtime. These two features alone might be worth the price of admission, but Allora goes one step further ­ it includes a set of SOAP interfaces so you can expose it as a Web service. The holiday weekend and publishing schedules have kept me from installing and running it at home, but I was very impressed with the hands-on demo of the Graphical Mapper.

The other product that caught my fancy was Forum System's XML Web Services Security Appliance, which deals specifically with securing XML documents. This is a hardware device that plugs into your network between the firewall and the application server. As we know, XML is basically self-describing data. An element called "password" or "card number" kind of screams out to the world that there's good juicy data there. This is rather a gaping vulnerability that the security appliance addresses by encrypting the data, either in totality or on an element-by-element basis, and protects it from end-to-end.

I would be remiss if, in the focus on Web services, I failed to point out that the conference also had a Java focus. The best Java presentation I went to was given by Rick Hightower of Trivera. His talk on "Java Tools for Extreme Programming" was well presented and rather informative. Rick focused on the testing and continuous integration portions of XP, discussing JUnit, Ant, and Cactus in detail. His talk proved to me that no matter what you are doing, no matter what you call your methodology, testing is invaluable and that these tools will make your life easier.

On Thursday there was a panel discussion on .NET versus J2EE. The stars were Simon Phipps, chief technical evangelist at Sun, and Barry Gregory, principal technology specialist from Microsoft. Sharing the stage with them were Sean Rhody, editor-in-chief of Web Services Journal, Mike Kovach of FullTilt Systems, and the editor-in-chief of these very pages, Alan Williamson. Because this conference had a .NET track (which, admittedly, I did not take advantage of), I had hoped for a fairly well-reasoned discussion. Some good points were made on both sides. Sadly, most good points were buried in bickering and the entire discussion was peppered with not-so-thinly-veiled snipes between the two camps. Maybe it was naïve of me to expect more, maybe it would have been better to leave representatives of Microsoft and Sun out of the discussion, but as it stood, the whole thing left a sour taste in my mouth.

Finally, right next to the Web Services Edge was PC Expo/Tech- XNY and attendees of one got admission to the other. While this may seem like a great deal, free admission to PC Expo after all, it really took away from the power of Web Services Edge. At the risk of sound horribly l33t, the net effect was hordes of mere users, wearing "Gimme Free Stuff" buttons, gawping like tourists at booths displaying things they wouldn't understand even if they wanted to. They clogged the aisles, wasted exhibitors' time, and in some cases kept us Web Services Edge attendees from speaking to the vendors. What's more they glommed up more than their share of the goodies. And let's face it, to tech folk like us, corporate toys are second in importance only to free food.

Summing up: Web services exists in some form. It is coming. You can either help define it or live with what happens out there. But if you're reading this magazine, you'll end up working with it on some level. Whatever shape this mess takes, one thing is clear ­ XML is the lingua franca of Web services. Learn it. Live it. Love it. I know I spent a lot of time talking about what Web services isn't. Sometimes, though, that's more important than learning what something is. Which made my four days at the Web Services Edge Conference & Expo invaluable.

Author Bio
Steven Berkowitz has done development and project management for Fortune 100 companies, startups, and nonprofit organizations. [email protected]

All Rights Reserved
Copyright ©  2004 SYS-CON Media, Inc.
  E-mail: [email protected]

Java and Java-based marks are trademarks or registered trademarks of Sun Microsystems, Inc. in the United States and other countries. SYS-CON Publications, Inc. is independent of Sun Microsystems, Inc.