Real World Web Services

by Will Iverson (O'Reilly, 2004)

"Web services" is one of those tech buzzwords that bubbles up and takes hold. Sometimes those buzzwords fade and never fulfill their promise (Remember all that talk about "push technology" in the late 90's?). Web services, however, seems to be fulfilling its promise.

Users of Web encounter web services all the time, although they may not know it. But it's web services that allow the links to to show up, and get automatically updated, on this page. It's a web service that allows a website to automatically display the weather forecast as served up by some other site, or Google Adwords. And it's a web service that allows RSS headlines to get displayed automatically on a page.

If you are a webmaster, and you've been wondering how to implement advanced web services on your site, Real World Web Services by Will Iverson may just be the place to start. This book focuses on "using existing web services in productive and useful ways." This isn't a Dummies book -- it's from O'Reilly which means its for the professional webmaster who knows something more about programming than using a Front Page bot. Most of the programming in the book is Java, although Java isn't the only way to go about web services.

Before you can make use of the book, you will obviously need full access to either a website, or an offline testing server to try out your code. The author also recommends using Apache Jakarta Tomcat as your application server, and also Apache XML-RPC and Apache Axis, which is the Apache SOAP web services toolkit. The Apache tools aren't the only way to go -- after all you can always pay a lot for Microsoft's .NET, or look for similar offerings developed in PHP or Perl. If all that's a mystery, then this book isn't for you.

Still with me? OK -- these are the examples you will learn how to implement in this book.

We start out with ways to make money. First is a project that let's you do competitive analysis searching, Google, and eBay to find price information on competing projects. This serves to introduce you to the web service offerings those three companies make available to webmasters. The second example shows how to automate some of the processes involved in selling on eBay, and shows how to use Fed Ex's web services to automatically calculate shipping costs. The third example uses PayPal's web services to help automate some of the tasks involved in collecting money.

From making money the book next turns to news, showing how to make an RSS feed from Google search results; after that comes an example of using an open source Java job scheduler called Quartz to build a news-gathering application. This is built on top of the earlier example of how to use Google.

After news comes entertainment. The sixth project shows how to use an open source project called freedb to look up information about audio CDs, so that you can build a CD catalog. Later in the book, another project shows how to create your own Hot News Sheet to give you a single web page that shows what's news both from the mainstream media as well as the world of blogs. A final project slows how to set up a website to generate automatic daily discussions.

While the bulk of the book is devoted to hands-on demonstrations and code listings, there's a brief introduction to web services in the front, and a chapter looking at future technologies such as REST, UDDI, and Rendezvous.

If you aren't afraid to wrestle with code, and want to move beyond the simple cut-and-paste tools of Amazon Associates or Google Adwords, then this book may be what you're looking for. Not sure if you've got the background needed for the book? Check out it's page at, which gives a sample chapter and lets you download all the code used in the book.

This review also appears at