The Real World
I’ll conclude this chapter with a short look at some important details of using XML-RPC in the real world. This continues the focus on allowing you to use XML not because it is the newest and neatest technology, but because it is the best for solving certain situations. All of the knowledge within this book, the XML specifications, and other XML books will not make your application operate as well as it could if you do not know when and how to use XML and XML-RPC correctly! This section highlights some of the common issues that arise in using XML-RPC.
Where’s the XML in XML-RPC?
After working through this chapter, you
may have been surprised that you didn’t have to write any SAX,
DOM, or JDOM code. In fact, you used very little XML directly at all.
This is because the XML-RPC libraries were responsible for the
encoding and decoding of the requests that your clients sent to and
from the servers. While this may seem a little bit of a letdown, as
you didn’t write any code that directly manipulates XML, you
are definitely using XML technology. The simple request to the
sayHello( ) method was actually translated to an
HTTP call that looks like Example 11-10.
Example 11-10. XML for XML-RPC request
POST /RPC2 HTTP/1.1 User-Agent: Tomcat Web Server/3.1 Beta (Sun Solaris 2.6) Host: newInstance.com Content-Type: text/xml Content-length: 234 <?xml version="1.0"?> <methodCall> <methodName>hello.sayHello</methodName> <params> <param> <value><string>Brett</string></value> </param> ...