WEB SERVICES
Web Service:
A web service is a web
based functionality that we access using the protocols of the web.
The goal of the web
service is to create web based applications that interact with other
applications with no user interface.
Thus Web Service is an application that is designed
to interact directly with other applications over the internet. In simple
sense, Web Services are means for interacting with objects over the Internet.
Web Service is
Ø Language
Independent
Ø Protocol Independent
Ø Platform
Independent
Ø It assumes stateless
service architecture.
WEB SERVICE HISTORY :
As Web Service is nothing but means for Interacting with objects over the Internet.
1. Initially
Object - Oriented Language comes which allow us to interact with two object
within same application.
2.Component
Object Model (COM) which allows to interact two objects on the same
computer, but in different applications.
3. Distributed
Component Object Model (DCOM) which allows to interact two objects on
different computers, but within same local network.
4. And finally
the web services, which allows two
object to interact internet. That is it allows to interact between two object on
different computers and even not within same local network.
Web Service Architecture
There are two ways to view the web service
architecture.
·
Web service
roles
·
Web service
protocol stack.
1. Web Service Roles
There are three major roles within the web service
architecture:
This is the provider of the web service. The service
provider implements the service and makes it available on the Internet.
This is any consumer of the web service. The
requestor utilizes an existing web service by opening a network connection
and sending an XML request.
This is a logically centralized directory of
services. The registry provides a central place where developers can publish
new services or find existing ones. It therefore serves as a centralized
clearinghouse for companies and their services.
2. Web Service Protocol Stack
A second option for viewing the web service
architecture is to examine the emerging web service protocol stack. The stack
is still evolving, but currently has four main layers.
This layer is responsible for transporting messages
between applications. Currently, this layer includes hypertext transfer
protocol (HTTP), Simple Mail Transfer Protocol (SMTP), file transfer protocol
(FTP), and newer protocols, such as Blocks Extensible Exchange Protocol
(BEEP).
This layer is responsible for encoding messages in a
common XML format so that messages can be understood at either end.
Currently, this layer includes XML-RPC and SOAP.
This layer is responsible for describing the public
interface to a specific web service. Currently, service description is
handled via the Web Service Description Language (WSDL).
This layer is responsible for centralizing services
into a common registry, and providing easy publish/find functionality.
Currently, service discovery is handled via Universal Description, Discovery,
and Integration (UDDI).
|
Web Services Technologies
Web
service architecture involves many layered and interrelated technologies. There
are many ways to visualize these technologies, just as there are many ways to
build and use Web services. Figure below provides one illustration of
some of these technology families.
XML :
Ø
XML
solves a key technology requirement that appears in many places. By offering a
standard, flexible and inherently extensible data format, XML significantly
reduces the burden of deploying the many technologies needed to ensure the
success of Web services.
Ø
The
important aspects of XML, for the purposes of this Architecture, are the core
syntax itself, the concepts of the XML Info set, XML Schema and XML Namespaces.
Ø
XML
Infoset is not a data format , but a formal set of information items and their
associated properties that comprise an abstract description of an XML document . The XML Infoset specification
provides for a consistent and rigorous set of definitions for use in other
specifications that need to refer to the information in a well-formed XML
document.
SOAP
Ø
SOAP provides a standard, extensible, composable
framework for packaging and exchanging XML messages. In the context of this
architecture, SOAP 1.2 also provides a convenient mechanism for referencing capabilities (typically
by use of headers).
Ø
SOAP defines
an XML-based messaging framework: a processing model and an exensibility model.
SOAP messages can be carried by a variety of network protocols; such as HTTP,
SMTP, FTP, RMI/IIOP, or a proprietary messaging protocol.
Ø
SOAP defines three optional components: a
set of encoding rules for expressing instances of application-defined data
types, a convention for representing remote procedure calls (RPC) and
responses, and a set of rules for using SOAP with HTTP/1.1.
WSDL
Ø
WSDL is a language for describing Web services.
Ø
WSDL
describes Web services starting with the messages that are exchanged between
the requester and provider agents. The messages themselves are described
abstractly and then bound to a concrete network protocol and message format.
Ø
Web
service definitions can be mapped to any implementation language, platform,
object model, or messaging system. Simple extensions to existing Internet
infrastructure can implement Web services for interaction via browsers or
directly within an application. The application could be implemented using COM,
JMS, CORBA, COBOL, or any number of proprietary integration solutions. As long
as both the sender and receiver agree on the service description, (e.g. WSDL
file), the implementations behind the Web services can be anything.
UDDI :
UDDI is a platform-independent framework for describing services,
discovering businesses, and integrating business services by using the
Internet.
Ø UDDI stands for
Universal Description, Discovery and Integration
Ø UDDI is a directory
for storing information about web services
Ø UDDI is a directory
of web service interfaces described by WSDL
Ø UDDI communicates via
SOAP
Ø UDDI is built into
the Microsoft .NET platform