Webservices Tutorial
Webservices Tutorial
i
Web Services
In this tutorial, you will learn what exactly web services are and why and how to use them.
Audience
This tutorial will be useful for all those readers inclined to learn the basics of web services
and implement them in practice.
Prerequisites
This is an elementary tutorial that introduces the concepts of web services. It does not
require the readers to have a prior knowledge of any technology in particular, however it
would certainly make you comfortable if you have a basic understanding of XML, HTTP,
TCP/IP concepts.
All the content and graphics published in this e-book are the property of Tutorials Point (I)
Pvt. Ltd. The user of this e-book is prohibited to reuse, retain, copy, distribute or republish
any contents or a part of contents of this e-book in any manner without written consent of
the publisher.
We strive to update the contents of our website and tutorials as timely and as precisely as
possible, however, the contents may contain inaccuracies or errors. Tutorials Point (I) Pvt.
Ltd. provides no guarantee regarding the accuracy, timeliness or completeness of our
website or its contents including this tutorial. If you discover any errors on our website or
in this tutorial, please notify us at contact@tutorialspoint.com
i
Web Services
Table of Contents
About the Tutorial ...................................................................................................................................... i
Audience ..................................................................................................................................................... i
Prerequisites ............................................................................................................................................... i
Example ..................................................................................................................................................... 2
XML-RPC .................................................................................................................................................... 8
SOAP .......................................................................................................................................................... 8
WSDL ......................................................................................................................................................... 9
UDDI .......................................................................................................................................................... 9
ii
Web Services
Confidentiality ......................................................................................................................................... 15
Authentication ......................................................................................................................................... 15
Transports................................................................................................................................................ 17
Security .................................................................................................................................................... 17
Management ........................................................................................................................................... 18
iii
Web Services
1. What are Web Services?
Different books and different organizations provide different definitions to Web Services.
Some of them are listed here.
A web service is any piece of software that makes itself available over the internet and
uses a standardized XML messaging system. XML is used to encode all communications
to a web service. For example, a client invokes a web service by sending an XML
message, then waits for a corresponding XML response. As all communication is in
XML, web services are not tied to any one operating system or programming
language—Java can talk with Perl; Windows applications can talk with Unix
applications.
Web services are self-contained, modular, distributed, dynamic applications that can
be described, published, located, or invoked over the network to create products,
processes, and supply chains. These applications can be local, distributed, or web-
based. Web services are built on top of open standards such as TCP/IP, HTTP, Java,
HTML, and XML.
Web services are XML-based information exchange systems that use the Internet for
direct application-to-application interaction. These systems can include programs,
objects, messages, or documents.
A web service is a collection of open protocols and standards used for exchanging data
between applications or systems. Software applications written in various
programming languages and running on various platforms can use web services to
exchange data over computer networks like the Internet in a manner similar to inter-
process communication on a single computer. This interoperability (e.g., between Java
and Python, or Windows and Linux applications) is due to the use of open standards.
To summarize, a complete web service is, therefore, any service that:
All these components have been discussed in the Web Services Architecture chapter.
Example
Consider a simple account-management and order processing system. The accounting
personnel use a client application built with Visual Basic or JSP to create new accounts and
enter new customer orders.
The processing logic for this system is written in Java and resides on a Solaris machine, which
also interacts with a database to store information.
The client program bundles the account registration information into a SOAP message.
This SOAP message is sent to the web service as the body of an HTTP POST request.
The web service unpacks the SOAP request and converts it into a command that the
application can understand.
The application processes the information as required and responds with a new unique
account number for that customer.
Next, the web service packages the response into another SOAP message, which it
sends back to the client program in response to its HTTP request.
The client program unpacks the SOAP message to obtain the results of the account
registration process.
5
Web Services
2. Why Web Services?
Interoperability
Web services allow various applications to talk to each other and share data and services
among themselves. Other applications can also use the web services. For example, a VB or
.NET application can talk to Java web services and vice versa. Web services are used to make
the application platform and technology independent.
Standardized Protocol
Web services use standardized industry standard protocol for the communication. All the four
layers (Service Transport, XML Messaging, Service Description, and Service Discovery layers)
use well-defined protocols in the web services protocol stack. This standardization of protocol
stack gives the business many advantages such as a wide range of choices, reduction in the
cost due to competition, and increase in the quality.
6
Web Services