CSE 636 Data Integration - PowerPoint PPT Presentation

About This Presentation
Title:

CSE 636 Data Integration

Description:

CSE 636 Data Integration Web Services – PowerPoint PPT presentation

Number of Views:39
Avg rating:3.0/5.0
Slides: 18
Provided by: MichailPe5
Learn more at: https://cse.buffalo.edu
Category:

less

Transcript and Presenter's Notes

Title: CSE 636 Data Integration


1
CSE 636Data Integration
Web Services
2
What is a Web Service
  • A web service is a network accessible interface
    to application functionality
  • Application interoperability across different
    platforms
  • Built using standard Internet technologies
  • Clients of web services do NOT need to know how
    they are implemented

Network
Web Service
?
?
Application Client
Application Code
3
Web Services Related Standards
  • Web Services Description Language (WSDL) 1.1
  • http//www.w3.org/TR/wsdl (03/01)
  • Version 2.0 under development
  • Simple Object Access Protocol (SOAP)
  • http//www.w3.org/TR/soap/
  • Universal Description, Discovery and Integration
    (UDDI)
  • http//www.uddi.org/

4
Web Service Technology Stack
Web Service Client
Discovery
Shopping web service?
UDDI
WSDL URIs
Web Service
Description
WSDL
WSDL
SOAP/HTTP request
Proxy
Messaging
SOAP/HTTP response
Transport
HyperText Transfer Protocol (HTTP)
5
Part 1 Web Service Methods
Web Service Client
Discovery
Shopping web service?
UDDI
WSDL URIs
Web Service
Description
WSDL
WSDL
SOAP/HTTP request
Proxy
Messaging
SOAP/HTTP response
Transport
HyperText Transfer Protocol (HTTP)
6
Part 2 Web Service Description
Web Service Client
Discovery
Shopping web service?
UDDI
WSDL URIs
Web Service
Description
WSDL
WSDL
SOAP/HTTP request
Proxy
Messaging
SOAP/HTTP response
Transport
HyperText Transfer Protocol (HTTP)
7
Part 3 Proxy to Access Web Service
Web Service Client
Discovery
Shopping web service?
UDDI
WSDL URIs
Web Service
Description
WSDL
WSDL
SOAP/HTTP request
Proxy
Messaging
SOAP/HTTP response
Transport
HyperText Transfer Protocol (HTTP)
8
Part 4 Client to Invoke Proxy
Web Service Client
Discovery
Shopping web service?
UDDI
WSDL URIs
Web Service
Description
WSDL
WSDL
SOAP/HTTP request
Proxy
Messaging
SOAP/HTTP response
Transport
HyperText Transfer Protocol (HTTP)
9
Data Services Architecture
Web Application Server
Web Service
Web Service Client
WSDL
WSDL
Parameterized XQuery Expressions
ParameterInstantiation
SOAP/HTTP request
SOAP/HTTP response
QueryExecution
QueryResult
XML Database
XML Schema
XML File
10
Web Services Definition Language (WSDL)
  • Defines services as collections of network
    endpoints
  • Consists of abstract definitions
  • Types
  • Messages
  • Port Types Operations
  • and concrete implementations
  • Bindings
  • Services Ports
  • Broken into pieces for reuse purposes

11
Port Types Operations
  • Port Type An abstract set of operations
    supported
  • Operation An abstract description of an action
    supported
  • ltportType name"AddressBook"gt
  • ltoperation name"addEntry"gt
  • ltinput message"tnsAddEntryRequest"/gt
  • ltoutput message"tnsempty"/gt
  • lt/operationgt
  • ltoperation name"getAddressFromName"gt
  • ltinput message"tnsGetAddressFromNameRequ
    est"/gt
  • ltoutput message"tnsGetAddressFromNameRes
    ponse"/gt
  • lt/operationgt
  • lt/portTypegt
  • Programming languages refer to a port type as a
    class, and to an operation as a method

12
Messages
  • Abstract, typed definitions of the data being
    communicated
  • ltmessage name"empty"/gt
  • ltmessage name"AddEntryRequest"gt
  • ltpart name"address" type"tnsaddress"/gt
  • lt/messagegt
  • ltmessage name"GetAddressFromNameRequest"gt
  • ltpart name"name" element"tnsentryName"/gt
  • lt/messagegt
  • ltmessage name"GetAddressFromNameResponse"gt
  • ltpart name"address" type"tnsaddress"/gt
  • lt/messagegt

13
Types
  • Data type definitions using the XML Schema type
    system
  • lttypesgt
  • ltxsschema targetNamespace"urnAddressFetcher
    "
  • xmlnsxs"http//www.w3.org/1999/X
    MLSchema"gt
  • ltxselement name"entryName"
    type"xsstring"/gt
  • ltxscomplexType name"address"gt
  • ltxsallgt
  • ltxselement name"streetNum"
    type"xsint"/gt
  • ltxselement name"streetName"
    type"xsstring"/gt
  • ltxselement name"city"
    type"xsstring"/gt
  • ltxselement name"state"
    type"xsstring"/gt
  • ltxselement name"zip"
    type"xsint"/gt
  • ltxselement name"phoneNumber"
    type"xsint"/gt
  • lt/xsallgt
  • lt/xscomplexTypegt
  • lt/xsschemagt
  • lt/typesgt

14
WSDL File Structure
  • ltdefinitions name"urnAddressFetcher"
  • targetNamespace"urnAddressFetcher"
  • xmlnstns"urnAddressFetcher"
  • xmlnsxs"http//www.w3.org/1999/XMLS
    chema"
  • xmlnssoap"http//schemas.xmlsoap.or
    g/wsdl/soap/"
  • xmlns"http//schemas.xmlsoap.org/wsd
    l/"gt
  • lttypesgtlt/typesgt
  • ltmessage name"AddEntryRequest"gtlt/messagegt
  • ltportType name"AddressBook"gtlt/portTypegt
  • ltbindinggtlt/bindinggt
  • ltservicegtlt/servicegt
  • lt/definitionsgt

Type Definitions
Message Declarations
Port Type Declarations
Binding Declarations
Service Declaration
15
Bindings
  • Concrete protocol and data format specifications
    for a particular port type
  • ltbinding name"AddressBookSOAPBinding"
    type"tnsAddressBook"gt
  • ltsoapbinding
  • style"document"
  • transport"http//schemas.xmlsoap.org/
    soap/http"/gt
  • ltoperation name"getAddressFromName"gt
  • ltsoapoperation soapAction""/gt
  • ltinputgt
  • ltsoapbody use"literal"/gt
  • lt/inputgt
  • ltoutputgt
  • ltsoapbody use"literal"/gt
  • lt/outputgt
  • lt/operationgt
  • lt/bindinggt

16
Services Ports
  • Port a single endpoint defined as a combination
    of a binding and a network address
  • Service a collection of related endpoints
  • ltservice name"AddressBookService"gt
  • ltport name"AddressBook" binding"tnsAddressB
    ookSOAPBinding"gt
  • ltsoapaddress location"http//localhost8
    080/axis/services/AddressBook"/gt
  • lt/portgt
  • lt/servicegt

17
Not Discussed
  • Types of operations
  • One-way The endpoint receives a message
  • Request-response The endpoint receives a
    message, and sends a correlated message
  • Solicit-response The endpoint sends a message,
    and receives a correlated message
  • Notification The endpoint sends a message
  • Alternative Bindings
  • HTTP Using GET and POST
  • MIME
  • SOAP
  • RPC-Style Web Services
  • UDDI
Write a Comment
User Comments (0)
About PowerShow.com