Have you ever needed to share processing between two or more computers running programs written in different languages on different operating systems? Or have you ever wanted to publish information on the Web so that programs other than browsers could work with it? XML-RPC, a system for remote procedure calls built on XML and the ubiquitous HTTP protocol, is the solution you've been looking for.Programming Web Services with XML-RPC introduces the simple but powerful capabilities of XML-RPC, which lets you connect programs running on different computers with a minimum of fuss, by wrapping procedure calls in XML and establishing simple pathways for calling functions. With XML-RPC, Java programs can talk to Perl scripts, which can talk to Python programs, ASP applications, and so on. You can provide access to procedure calls without having to worry about the system on the other end, so it's easy to create services that are available on the Web.XML-RPC isn't the only solution for web services; the Simple Object Access Protocol (SOAP) is another much-hyped protocol for implementing web services. While XML-RPC provides fewer capabilities than SOAP, it also has far fewer interoperability problems and its capabilities and limitations are much better understood. XML-RPC is also stable, with over 30 implementations on a wide variety of platforms, so you can start doing real work with it immediately.Programming Web Services with XML-RPC covers the details of five XML-RPC implementations, so you can get started developing distributed applications in Java, Perl, Python, ASP, or PHP. The chapters on these implementations contain code examples that you can use as the basis for your own work. This book also provides in-depth coverage of the XML-RPC specification, which is helpful for low-level debugging of XML-RPC clients and servers. And if you want to build your own XML-RPC implementation for another environment, the detailed explanations in this book will serve as a foundation for that work.
Programming Web Services with XML-RPC explains how to use XML over HTTP to build distributed applications. This of course is the realm of SOAP (Simple Object Access Protocol), which is an evolving W3C standard. XML-RPC is not SOAP, although the two have a common ancestry. XML-RPC has fewer features than SOAP, and is procedural rather than object-orientated. On the plus side, it is a stable, practical and easy-to-use standard.
After a couple of chapters introducing XML-RPC, this short book gets straight down to the nitty-gritty of implementing solutions in a variety of languages. There is a chapter each on Java, Perl, PHP, Python, and ASP (Active Server Pages). Each chapter explains where to find XML-RPC libraries, and how to create both client and server applications, complete with snippets of example code. Although few readers will be working with all these technologies, the diversity demonstrates how effectively XML-RPC bridges different languages and platforms. By way of illustration, one of the ASP examples shows how to talk to Microsoft Access from Linux, a common real-world problem in mixed-platform environments.
The closing chapter gives the wider picture, showing where to find public XML-RPC services, offering design tips, and explaining how to choose between XML-RPC and SOAP. There is an appendix covering XML basics, and a second one offering a brief introduction to HTTP. For anyone who has looked at SOAP and found it bewilderingly complex, XML-RPC and this book could well be the answer. --Tim Anderson