For many Java developers, web services appeared to come out of nowhere. Its advantages are clear: web services are platform-independent (like Java itself), language-agnostic (a clear advantage over Java RMI), can easily be tunneled through firewalls (an obvious benefit to anyone who has dealt with modern enterprise networks), object-oriented (we all know about that), and tends to be loosely coupled (allowing more flexible application development). But these advantages have been obscured by a cloud of hype and a proliferation of jargon that are difficult to penetrate. What are SOAP, UDDI, WSDL, and JAXM? To say nothing of JAXR, tModels, category bags, WSFL, and other friends? And assuming that you understand what they are, how do you do anything with ...