Transcript Web service

Presentation 7 part 1:
Web Services Introduced
Outline
•
•
•
•
Definition
Overview of Web Services
Examples
Next Time: SOAP & WSDL
Slide 2
Ingeniørhøjskolen i Århus
Web Service Defined
• W3C definition:
– [Definition: A Web service is a software system
designed to support interoperable machine-to-machine
interaction over a network. It has an interface described
in a machine-processable format (specifically WSDL).
Other systems interact with the Web service in a
manner prescribed by its description using SOAP
messages, typically conveyed using HTTP with an XML
serialization in conjunction with other Web-related
standards.]
Slide 3
Ingeniørhøjskolen i Århus
Overview SOAP & Web services
• SOAP – Simple Object Access Protocol
- & Web services:
– A light-weight & ultra heterogenic alternative
to CORBA, DCOM & RMI
– Openness in focus – meant for opening
legacy applications for others
– Not meant in the role of Inter business, large
scale, transaction heavy communication (as
CORBA & J2EE)
– But can prob. be used for it!
– Does not have services for transactions,
concurrency, persistence, scalability
– Does have discovery services (UDDI) giving
some degree of location transparency
– Does have Interface Definition Language for
heterogeneity (WSDL)
– Fails on several of the dist. system
requirements!
– But easy to implement yourself!
Slide 4
Ingeniørhøjskolen i Århus
Why SOAP When We Have CORBA?
• CORBA has been considered too complex by many
– May not be true with new development tools using wizards
• They aim at solving different tasks:
– SOAP covers light-weight application integration within the
enterprise, exposing legacy business objects across enterprises,
and sharing resources (like Google Search Engine, or Sonofon
SMS/MMS API) on the net, as well as technology openness
– CORBA has a wide range of services for (as we shall see later):
•
•
•
•
•
Locating, creating & moving objects
Object relationship management between hosts
Persistency services – activation frameworks etc.
Distributed concurrency and transaction management
Security
– Only some are supported in SOAP tech family – its lightweight
– Lesson: define your needs – and find the right technology
Slide 5
Ingeniørhøjskolen i Århus
Regarding SOAP
• SOAP is not by it self revolutionary – its merely:
– a framework for exchanging XML-based information in a network
(via protocols of the TCP/IP family) – with RPC capabilities
– the currently most hyped XML / Web service technology
• But when combined with other technologies like
– WSDL &
– UDDI
– It solves several of the requirements of a Distributed System
• And the fact that it is an open standard – supported by all major
software vendors and programming languages:
– C++
– Java
– C#
– Delphi
– Visual Basic and many more
• Makes it somewhat revolutionary! A practical solution – like WWW
Slide 6
Ingeniørhøjskolen i Århus
Overview SOAP & Web services
• SOAP – Simple Object Access Protocol
- & Web services:
– A light-weight & ultra heterogenic alternative
to CORBA, DCOM & RMI
– Openness in focus – meant for opening
legacy applications for others
– Not meant in the role of Inter business, large
scale, transaction heavy communication (as
CORBA & J2EE)
– No services for transactions, concurrency,
persistence, scalability
– Discovery services (UDDI) giving some
degree of location transparency
– Interface Definition Language for
heterogeneity (WSDL)
– Fails on several of the dist. system
requirements!
– But easy to implement yourself!
Slide 7
Ingeniørhøjskolen i Århus
Why SOAP When We Have CORBA?
• CORBA has been considered too complex by many
– May not be true with new development tools using wizards
• They aim at solving different tasks:
– SOAP covers light-weight application integration within the
enterprise, exposing legacy business objects across enterprises,
and sharing resources (like Google Search Engine, or Sonofon
SMS/MMS API) on the net, as well as technology openness
– CORBA has a wide range of services for (as we have seen):
•
•
•
•
•
Locating, creating & moving objects
Object relationship management between hosts
Persistency services – activation frameworks etc.
Distributed concurrency and transaction management
Security
– Only some are supported in SOAP tech family – its lightweight
– Lesson: define your needs – and find the right technology
Slide 8
Ingeniørhøjskolen i Århus
Regarding SOAP
• SOAP is not by it self revolutionary – its merely:
– a framework for exchanging XML-based information in a network
(via protocols of the TCP/IP family) – with RPC capabilities
– the currently most hyped XML / Web service technology
• But when combined with other technologies like
– WSDL &
– UDDI
– It solves several of the requirements of a Distributed System
• And the fact that it is an open standard – supported by all major
software vendors and programming languages:
– C++
– Java
– C#
– Delphi
– Visual Basic and many more
• Makes it somewhat revolutionary! A practical solution – like WWW
Slide 9
Ingeniørhøjskolen i Århus
Examples of Web Services
• Google's Web Service - access the Google search engine
– http://www.google.com/apis/
• Amazon's Web Service - access Amazon's product
information
– http://associates.amazon.com/exec/panama/associates/join/develo
per/resources.html
• XMethods - collection of information about existing Web
services
– http://www.xmethods.com
• SalCentral - WSDL / SOAP Web services search-engine
– http://www.salcentral.com/salnet/webserviceswsdl.asp
Slide 10
Ingeniørhøjskolen i Århus
Google Web Service
Slide 11
Ingeniørhøjskolen i Århus
Service-Oriented Architecture (SOA)
Opening up for doing business (the sharing of objects) on the Internet
Server
3
Client
Legacy
code on
server
1
Abstract Architecture
- Web service stack
2
Registry
Slide 12
Ingeniørhøjskolen i Århus
Technologies for Implementing SOA
SOAP for communication
WSDL for contract & binding
UDDI & WSDL for registration & discovery
Slide 13
Ingeniørhøjskolen i Århus