Chapter 7. Web Services in Action
In the previous chapters, we've been building a picture of the technologies and methodologies around SOAP web services. In this chapter, we apply the discussion to the real-world implementation of a SOAP web service. You'll see how SOAP and WSDL are deployed, and also how to draw in other XML technologies to solve problems that SOAP and WSDL do not address.
The service we'll develop is the CodeShare Service Network, a simple set of peer-to-peer web services for sharing application source code. While we develop that code, we'll stop to take a look at security, and how to implement it when SOAP and WSDL don't cover it.
The CodeShare implementation we show here provides a way for people to share source code. We use digital signatures to verify the identity of clients, and keep a central registry of the files people are offering. Rather than a single web service, the CodeShare application comprises a number of different small interfaces, a common web services design. Each interface can be implemented in any language that supports SOAP, and we used a mixture of Perl and Java to demonstrate this. CodeShare is an example of a peer web service. In the peer-to-peer (P2P) model, the Internet isn't viewed as a network of clients accessing the resources of a server. Rather, it's a cooperative network of peers sharing resources equally and evenly. The lines are blurred between the service provider and the service consumer, with no application required to have ...