The Web Services Shootout: .NET or Java?
For years, when customers have asked me for "Web-based solutions," I've had to nail down the specifics: What problem do they expect to solve? In many cases, all the customer really wanted was a client/server application in which the client could hook to the server through TCP/IP. I'd build a couple of native applications and get the benefits of Internet connectivity without forcing the customer to use a crude Web-based interface.
Technically, this approach doesn't create a Web service because it doesn't use WSDL (see sidebar). If you're a programmer who has had the same type of experiencebuilding client/server apps connected through the Internetyou probably want to know what you gain (as well as lose) by building a "real" Web service. Then you'll have a technical grounding for answering the question "Java or .NET?"
What Exactly Is a "Web Service"?
.NET and Java are synonymous in most people's minds with Web services, especially those who don't really know what a Web service is. You can find definitions of the term Web serviceall differentin several articles here on InformIT. These articles are different angles on the same elephant, but the one most relevant to our discussion is in the article "Describing Web Services: WSDL," by Eric Newcomer: A Web service is an application that uses the WSDL standard to provide functionality and to make itself knowable. (Not actually known, mind you, but knowable through a directory service of some sort.)