WEB SERVICES

Download Report

Transcript WEB SERVICES

Kemal Baykal
Rasim Ismayilov
Web Services(1)
 A software system which connects the machines over a
network in an interoperable manner
 The main idea is to make the communication between
business systems and clients and also within each
other.
 The main advantage of Web services is to allow
organizations to communicate data without knowing
each other's IT systems behind the firewall.
Web Services(2)
 Does not provide GUI unlike the server/client systems.
 Share business logic, data and processes through a
programmatic interface
 Normally the applications interact with each other, not
with users
 But you can add a GUI to gain extra functionalities
over the users.
Applications in Web Services
 XML is used to tag the
data
 SOAP is used to transfer
the data
 WSDL is used for
describing the services
available
 UDDI is used for listing
which services are
available
XML (Extensible Markup Language)
 It is classified as an extensible language because it
allows its users to define their own tags
 Main purpose is to facilitate the sharing of structured
data across different information systems
 It is the language both machines and human beings
can understand easily
 It is used both to encode documents and serialize data
SOAP (Service Oriented Architecture Protocol)
 is a protocol for exchanging XML-based messages over
computer networks
 used to encode the information in Web service request
and response messages before sending them over a
network
 SOAP messages are independent of any operating
system or protocol
 may be transported using a variety of Internet
protocols, including SMTP, MIME, and HTTP
SOAP elements
 Envelope element, identifies the XML document as a
SOAP message (required)
 Header element, contains header information
(optional)
 Body element, contains call and response information
(required)
 Fault element, provides information about errors that
occurred while processing the message (optional)
SOAP’s Protocols
 SOAP uses SMTP and
HTTP as an application
layer protocol for
transport.
 HTTP is used more
because it works well
with today's Internet
infrastructure.
 SOAP works well with
network firewalls.
SOAP
Advantages
Disadvantages
 SOAP allows the use of
 Because of the verbose XML
different transport protocols.
 Using SOAP allows easier
communication behind
proxies and firewalls
format, SOAP can be
considerably slower than
technologies such as CORBA.
This is not the case when
only small messages are sent
 Many SOAP implementations
limit the amount of data that
can be sent.
WSDL (Web Services Description Language)
 an XML-based language that provides a model for
describing Web services
 describe Web service's capabilities as collections of
communication endpoints capable of exchanging
messages
 an integral part of UDDI and the language that UDDI
uses
 is used to describe what a web service can do, where it
resides, and how to call it
WSDL’s elements (1)
 Types : a container for data type definitions using
some type system
 Message: an abstract, typed definition of the data
being communicated
 Operation: an abstract description of an action
supported by the service
 Port Type: an abstract set of operations supported by
one or more endpoints
WSDL’s elements (2)
 Binding: a concrete protocol specification for a
particular port type
 Port: a single endpoint defined as a combination of a
binding and a network address
 Service: a collection of related endpoints
WSDL’s Properties
 is a template for how services should be described and
bound by clients
 is often used in with SOAP and XML Schema to
provide web services over the Internet
 A client program connecting to a web service can read
the WSDL to determine what functions are available
on the server
 was developed by Microsoft and IBM
UDDI (Universal Description, Discovery and Integration)
 a Web-based distributed directory that enables
businesses to list themselves on the Internet and
discover each other
 is platform independent
 is XML based
 designed to be interrogated by SOAP messages
 to provide access to WSDL documents describing the
protocol bindings and message formats
UDDI Components
 White Pages: address,
contact, and known
identifiers
 Yellow Pages: industrial
categorizations based on
standard taxonomies
 Green Pages: technical
information about
services exposed by the
business
UDDI Data Types
 businessEntity: The top level structure, describing a
business or other entity for which information is being
registered
 bindingTemplate: Information necessary to use
specific services which may have bindings to one or
more protocols..
 businessService: Description of a set of services
which may contain one or more bindingTemplates.
 tModel: Technical “finger print” for a given service
which may also function as namespace to identify
other entities
Additional Specifications for WS (1)
 WS Security
 WS Reliability
 WS Reliable Messaging
 WS Addressing
 WS Transaction
Additional Specifications for WS (2)
 They are all specified by OASIS community (Microsoft,
IBM, VeriSign and Forum Systems)
 They use different technology (xml) not like
traditional http
 So the technology for security, reliable messaging,
reliability, addressing and transactions differ. They are
XML based.
 For example, as an alternative to use HTTPS to secure
the channel, it uses XML based technologies such as
XML Signature, XML Encyription,...
Web Services vs Java RMI
Web Services
Java RMI
 interoperable
 better performance
 transfer by xml files (knowing
 transfer by bytes
what goes in wire)
 easy access of enterprise
business operations
 platform-independent, easy
interaction through different
applications
 needs large bandwidths
 integrated with Java
 less CPU&memory usage
 doesn’t need large
bandwidths
Alternative Solution!
 dual technology can be
used
 Web Service
implementation for
external users
 an alternative higher
performance variant of
internal use by Java RMI
References
 http://www.ribomation.com/riboutils/webservices-
performance/article.html
 http://mercury.it.swin.edu.au/ctg/AWSA04/Papers/gr
ay.pdf
 http://en.wikipedia.org/wiki/Web_service
 http://www.webopedia.com/TERM/W/Web_services.
html