What is a Web Service?
Web Service is ia program that enables software functionality over the inernet. In other words, it's a program that runs on a server, and lets client software the possibility to invoke methods in a remote computer. The main issue of web-services, which makes them different from regular client-server applications, is that they are platform-independent. For example, web Server written in C# .Net can give services to applicaions written in Java (as in our case).
The propery of web services that enables them to be platorm-independent, is that client and server communicate using an xml-based protocol (SOAP). This protocol will be detaild, but the main idea of it is that the client sends an xml message to the server. The message tells the server to calculate a function (or to do a service in the general case). After getting the result, the server sends it to the client, again, packed in an xml message.
when a Web-server provides a service via the internet, she must specify which services are available. Intuitively, it should be done with a specification that tells the client how to invoke the service's methods. One can think about a specification document, which explains to humans how to call the server. However, the formal way to export a service's specification is via WSDL (Web Service Description Language).