Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
0% found this document useful (0 votes)
2 views

Chapter One Introduction

Web services are software applications that enable communication over the internet using standardized XML messaging, allowing interoperability across different operating systems and programming languages. They consist of components like SOAP, UDDI, and WSDL, and can be synchronous or asynchronous, supporting remote procedure calls and document exchange. The benefits of web services include exposing existing functionality, low-cost communication, and the use of standardized protocols for improved integration and management.

Uploaded by

Teddy yemu
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
2 views

Chapter One Introduction

Web services are software applications that enable communication over the internet using standardized XML messaging, allowing interoperability across different operating systems and programming languages. They consist of components like SOAP, UDDI, and WSDL, and can be synchronous or asynchronous, supporting remote procedure calls and document exchange. The benefits of web services include exposing existing functionality, low-cost communication, and the use of standardized protocols for improved integration and management.

Uploaded by

Teddy yemu
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 5

Chapter One: Introduction

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 −

 Is available over the Internet or private (intranet) networks


 Uses a standardized XML messaging system
 Is not tied to any one operating system or programming language
 Is self-describing via a common XML grammar
 Is discoverable via a simple find mechanism

Components of Web Services

The basic web services platform is XML + HTTP. All the standard web services work using the
following components −

1
 SOAP (Simple Object Access Protocol)
 UDDI (Universal Description, Discovery and Integration)
 WSDL (Web Services Description Language)

All these components have been discussed in the Web Services Architecture chapter.

How Does a Web Service Work?

A web service enables communication among various applications by using open standards
such as HTML, XML, WSDL, and SOAP. A web service takes the help of −

 XML to tag the data


 SOAP to transfer a message
 WSDL to describe the availability of service.

You can build a Java-based web service on Solaris that is accessible from your Visual Basic
program that runs on Windows.

You can also use C# to build new web services on Windows that can be invoked from your
web application that is based on JavaServer Pages (JSP) and runs on Linux.

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 steps to perform this operation are as follows −

 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.

2
 The client program unpacks the SOAP message to obtain the results of the account
registration process.

Why Web Services?

Here are the benefits of using Web Services −

Exposing the Existing Function on the network

A web service is a unit of managed code that can be remotely invoked using HTTP. That is, it
can be activated using HTTP requests. Web services allow you to expose the functionality of
your existing code over the network. Once it is exposed on the network, other applications
can use the functionality of your program.

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.

Low Cost Communication

Web services use SOAP over HTTP protocol, so you can use your existing low-cost internet
for implementing web services. This solution is much less costly compared to proprietary
solutions like EDI/B2B. Besides SOAP over HTTP, web services can also be implemented on
other reliable transport mechanisms like FTP.

Characteristics of Web Services

Web services have the following special behavioral characteristics −

XML-Based

3
Web services use XML at data representation and data transportation layers. Using XML
eliminates any networking, operating system, or platform binding. Web services based
applications are highly interoperable at their core level.

Loosely Coupled

A consumer of a web service is not tied to that web service directly. The web service interface
can change over time without compromising the client's ability to interact with the service. A
tightly coupled system implies that the client and server logic are closely tied to one another,
implying that if one interface changes, the other must be updated. Adopting a loosely
coupled architecture tends to make software systems more manageable and allows simpler
integration between different systems.

Coarse-Grained

Object-oriented technologies such as Java expose their services through individual methods.
An individual method is too fine an operation to provide any useful capability at a corporate
level. Building a Java program from scratch requires the creation of several fine-grained
methods that are then composed into a coarse-grained service that is consumed by either a
client or another service.

Businesses and the interfaces that they expose should be coarse-grained. Web services
technology provides a natural way of defining coarse-grained services that access the right
amount of business logic.

Ability to be Synchronous or Asynchronous

Synchronicity refers to the binding of the client to the execution of the service. In
synchronous invocations, the client blocks and waits for the service to complete its operation
before continuing. Asynchronous operations allow a client to invoke a service and then
execute other functions.

Asynchronous clients retrieve their result at a later point in time, while synchronous clients
receive their result when the service has completed. Asynchronous capability is a key factor in
enabling loosely coupled systems.

Supports Remote Procedure Calls(RPCs)

Web services allow clients to invoke procedures, functions, and methods on remote objects
using an XML-based protocol. Remote procedures expose input and output parameters that
a web service must support.

4
Component development through Enterprise JavaBeans (EJBs) and .NET Components has
increasingly become a part of architectures and enterprise deployments over the past couple
of years. Both technologies are distributed and accessible through a variety of RPC
mechanisms.

A web service supports RPC by providing services of its own, equivalent to those of a
traditional component, or by translating incoming invocations into an invocation of an EJB or
a .NET component.

Supports Document Exchange

One of the key advantages of XML is its generic way of representing not only data, but also
complex documents. These documents can be as simple as representing a current address, or
they can be as complex as representing an entire book or Request for Quotation (RFQ). Web
services support the transparent exchange of documents to facilitate business integration.

You might also like