3.3 Other Platforms

You shouldn't labor under any illusion that web services can be accessed only via Java (or the Apache libraries described in this chapter). The combination of Java and Apache merely provides for a free, reasonably robust, popular development platform. There are a variety of options, and depending on your situation, one of these may be more appropriate.

Note that virtually every programming language offers support for XML-RPC; please see http://www.xmlrpc.com/directory/1568/implementations for a list of implementations, including AppleScript, C, C++, Cold Fusion, COM, Dylan, Eiffel, Flash, JavaScript, Lingo, Lisp, Perl, PHP, Python, REALBasic, Rebol, Tcl, and many more.

3.3.1 PHP

PHP (http://www.php.net) is a popular language for web application development; it's easy, it's fun, and it integrates very well with databases such as MySQL. PHP offers excellent services for dealing with the network and HTTP. PEAR::SOAP at http://pear.php.net/package/SOAP is a popular, reasonably well-maintained SOAP implementation for PHP.

3.3.2 Perl

Perl support for SOAP as both a client and a server can be found at http://www.soaplite.com/. For more information on Perl and web services, see Programming Web Services with Perl (O'Reilly).

3.3.3 Microsoft

Microsoft has made web services a significant part of it's overall strategy, encompassing a variety of products and technologies. It's well beyond the scope of this text to delve into the full range of Microsoft's support for web services; for more information, visit http://msdn.microsoft.com/webservices/.

Note that Microsoft's aggressive support for SOAP can be hard for other vendors to match; if you are building a server using Microsoft SOAP technologies, make sure you enable services that other SOAP implementations can access.