Understanding Web Services
description
Transcript of Understanding Web Services
![Page 1: Understanding Web Services](https://reader035.fdocuments.in/reader035/viewer/2022070415/56814fd8550346895dbd9d33/html5/thumbnails/1.jpg)
1
Understanding Web Services
Presented By: Woodas Lai
![Page 2: Understanding Web Services](https://reader035.fdocuments.in/reader035/viewer/2022070415/56814fd8550346895dbd9d33/html5/thumbnails/2.jpg)
2
Understanding Web Services By Jaideep Roy and Anupama Ramanujan
What is Web Services? Architecture Core technologies
XML SOAP WSDL UDDI
![Page 3: Understanding Web Services](https://reader035.fdocuments.in/reader035/viewer/2022070415/56814fd8550346895dbd9d33/html5/thumbnails/3.jpg)
3
What is Web Services?What is Web Services?
A Web Services is a unit of application logic providing data and services to
other applications
They are published to the Web in such a way
that other applications can find and use them
![Page 4: Understanding Web Services](https://reader035.fdocuments.in/reader035/viewer/2022070415/56814fd8550346895dbd9d33/html5/thumbnails/4.jpg)
4
Examples of Web Services
a credit card service thatprocesses credit card transactionsfor a given account
a market data service thatprovides stock market dataassociated with a specifiedstock symbol
![Page 5: Understanding Web Services](https://reader035.fdocuments.in/reader035/viewer/2022070415/56814fd8550346895dbd9d33/html5/thumbnails/5.jpg)
5
Architecture
![Page 6: Understanding Web Services](https://reader035.fdocuments.in/reader035/viewer/2022070415/56814fd8550346895dbd9d33/html5/thumbnails/6.jpg)
6
Core Technologies Technologies for Web Services
XML UDDI ( XML Based ) SOAP ( XML Based ) WSDL ( XML Based )
![Page 7: Understanding Web Services](https://reader035.fdocuments.in/reader035/viewer/2022070415/56814fd8550346895dbd9d33/html5/thumbnails/7.jpg)
7
SOAP
Simple Object Access Protocol (SOAP)http://www.w3.org/TR/SOAP/
A lightweight XML communication message protocol
![Page 8: Understanding Web Services](https://reader035.fdocuments.in/reader035/viewer/2022070415/56814fd8550346895dbd9d33/html5/thumbnails/8.jpg)
8
Role of SOAP
.NETapplication
J avaApplication
SOAP ClientSOAPServer
.NET function callrequest
Binary
Perform Serialization orMarshalling
Perform De-Serializationor Un-Marshalling
XML (Text Based)
Binary J ava function callrequest
SOAP Message
![Page 9: Understanding Web Services](https://reader035.fdocuments.in/reader035/viewer/2022070415/56814fd8550346895dbd9d33/html5/thumbnails/9.jpg)
9
SOAP Overview
Describe the messaging format for machine-to-machine communication
Enable procedure calls on remote objects Define elements to specify remote function
names, parameters and return types
![Page 10: Understanding Web Services](https://reader035.fdocuments.in/reader035/viewer/2022070415/56814fd8550346895dbd9d33/html5/thumbnails/10.jpg)
10
SOAP Overview
Support different Internet protocols, such as HTTP, SMTP, FTP (Protocol neutral)
SOAP = XML + RPC + HTTP (Typical use) A SOAP document is an XML document
designed to invoke methods on remote computers over HTTP
![Page 11: Understanding Web Services](https://reader035.fdocuments.in/reader035/viewer/2022070415/56814fd8550346895dbd9d33/html5/thumbnails/11.jpg)
11
SOAP Structure
Header (Optional)
Body (Mandatory)
SOAP Message
Envelope
![Page 12: Understanding Web Services](https://reader035.fdocuments.in/reader035/viewer/2022070415/56814fd8550346895dbd9d33/html5/thumbnails/12.jpg)
12
SOAP Example<env:Envelope xmlns:env="http://www.w3.org/2001/06/soap-envelope" >
<env:Header>……
</env:Header><env:Body>
<m:GetLastTradePrice env:encodingStyle= "http://www.w3.org/2001/06/soap-encoding
" xmlns:m="http://example.org/2001/06/quotes"><symbol>DIS</symbol>
</m:GetLastTradePrice></env:Body>
</env:Envelope>
![Page 13: Understanding Web Services](https://reader035.fdocuments.in/reader035/viewer/2022070415/56814fd8550346895dbd9d33/html5/thumbnails/13.jpg)
13
WSDL Web Services Description Language (WSDL)
http://www.w3.org/TR/wsdl
Description of Web Services via XML-based standard format
Define the set of functions supported by the server and the formats a client should be used to request the service, like IDL in CORBA
![Page 14: Understanding Web Services](https://reader035.fdocuments.in/reader035/viewer/2022070415/56814fd8550346895dbd9d33/html5/thumbnails/14.jpg)
14
WSDL WSDL is used to describe the web
services. So, how to describe? WSDL has its own XML vocabulary
defined so as to describe the web service
![Page 15: Understanding Web Services](https://reader035.fdocuments.in/reader035/viewer/2022070415/56814fd8550346895dbd9d33/html5/thumbnails/15.jpg)
15
WSDL has a well-defined XML vocabulary to answer
the following questions regarding the web service
involved: What does the service do?
Both in machine and human-readable forms What language does the service speak?
The format/data structure of the message exchanged
WSDL
![Page 16: Understanding Web Services](https://reader035.fdocuments.in/reader035/viewer/2022070415/56814fd8550346895dbd9d33/html5/thumbnails/16.jpg)
16
How does the client talk to the service? HTTP/SMTP/FTP
Where is the location of the web service? The access point (URL)
WSDL
![Page 17: Understanding Web Services](https://reader035.fdocuments.in/reader035/viewer/2022070415/56814fd8550346895dbd9d33/html5/thumbnails/17.jpg)
17
WSDL <?xml version="1.0" encoding="UTF-8" ?> <wsdl:definitions
targetNamespace="http://137.189.94.136:8080/axis/echo.jws" xmlns="http://schemas.xmlsoap.org/wsdl/" xmlns:apachesoap="http://xml.apache.org/xml-soap" xmlns:impl="http://137.189.94.136:8080/axis/echo.jws" xmlns:intf="http://137.189.94.136:8080/axis/echo.jws" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:wsdlsoap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:xsd="http://www.w3.org/2001/XMLSchema"><wsdl:message name="echoStringResponse"> <wsdl:part name="echoStringReturn" type="xsd:string" /> </wsdl:message><wsdl:message name="echoStringRequest"> <wsdl:part name="str" type="xsd:string" /> </wsdl:message>
![Page 18: Understanding Web Services](https://reader035.fdocuments.in/reader035/viewer/2022070415/56814fd8550346895dbd9d33/html5/thumbnails/18.jpg)
18
WSDL <wsdl:portType name="echo"> <wsdl:operation name="echoString" parameterOrder="str"> <wsdl:input message="intf:echoStringRequest"
name="echoStringRequest" /> <wsdl:output message="intf:echoStringResponse"
name="echoStringResponse" /> </wsdl:operation> </wsdl:portType> <wsdl:binding name="echoSoapBinding" type="intf:echo"> <wsdlsoap:binding style="rpc" transport="http://schemas.xmlsoap.org/soap/http" /> <wsdl:operation name="echoString"> <wsdlsoap:operation soapAction="" /> <wsdl:input name="echoStringRequest"> <wsdlsoap:body encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" namespace="http://137.189.94.136:8080/axis/echo.jws" use="encoded" /> </wsdl:input>
![Page 19: Understanding Web Services](https://reader035.fdocuments.in/reader035/viewer/2022070415/56814fd8550346895dbd9d33/html5/thumbnails/19.jpg)
19
WSDL <wsdl:output name="echoStringResponse">
<wsdlsoap:body encodingStyle=http://schemas.xmlsoap.org/soap/encoding/
namespace=http://137.189.94.136:8080/axis/echo.jws
use="encoded" /> </wsdl:output> </wsdl:operation> </wsdl:binding> <wsdl:service name="echoService"> <wsdl:port binding="intf:echoSoapBinding" name="echo"> <wsdlsoap:address location="http://137.189.94.136:8080/axis/echo.jws" /> </wsdl:port>
</wsdl:service> </wsdl:definitions>
![Page 20: Understanding Web Services](https://reader035.fdocuments.in/reader035/viewer/2022070415/56814fd8550346895dbd9d33/html5/thumbnails/20.jpg)
20
UDDI Universal Description, Discovery, and Integration Specifications for service description and discovery Open-Standard
Raised By Ariba, IBM and Microsoft http://www.uddi.org (by Oasis)
XML-based message
![Page 21: Understanding Web Services](https://reader035.fdocuments.in/reader035/viewer/2022070415/56814fd8550346895dbd9d33/html5/thumbnails/21.jpg)
21
Service Architecture
UDDI defines a way to publish and discover information about Web services
![Page 22: Understanding Web Services](https://reader035.fdocuments.in/reader035/viewer/2022070415/56814fd8550346895dbd9d33/html5/thumbnails/22.jpg)
22
UDDI
• Information about the business (company name, company address ……)
• Categorization of the business and its services
• Technical information about services provided by a business (like the URL to invoke the Web Services)
White Page
Yellow Page
Green Page
![Page 23: Understanding Web Services](https://reader035.fdocuments.in/reader035/viewer/2022070415/56814fd8550346895dbd9d33/html5/thumbnails/23.jpg)
23
Core Structures of UDDI
• Business Entity• White Pages information
• Business Services• Yellow Pages information
• Binding Templates• Green Pages information • Contains references to tModels
• tModels• Service Type Definitions• Interface specifications for a service (WSDL)
Business Entity
BusinessService
tModel
tModel
BindingTemplate
BindingTemplate
![Page 24: Understanding Web Services](https://reader035.fdocuments.in/reader035/viewer/2022070415/56814fd8550346895dbd9d33/html5/thumbnails/24.jpg)
24
Research Challenge How to secure the Web Services
Invocation? How to ensure the reliability of the
Web Services? How to deal with the Quality of
Services?
![Page 25: Understanding Web Services](https://reader035.fdocuments.in/reader035/viewer/2022070415/56814fd8550346895dbd9d33/html5/thumbnails/25.jpg)
25
Q&A