1 / 19

Platform Choices: Web Services

Platform Choices: Web Services. Web Services Description Language. Platform Choices: Web Services. What is WSDL?. Web Services Description Language It is equivalent of IDL for Web Services It is in XML Schema format It defines an EXTENSIBLE framework for specifying Web Services interfaces

Download Presentation

Platform Choices: Web Services

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Platform Choices: Web Services Web Services Description Language

  2. Platform Choices: Web Services What is WSDL? • Web Services Description Language • It is equivalent of IDL for Web Services • It is in XML Schema format • It defines an EXTENSIBLE framework for specifying Web Services interfaces • Developed originally by Microsoft and IBM, and now being put through its paces in W3C. • W3C working on Version 1.2 of WSDL right now (Fall 2005). Web Services: WSDL

  3. Platform Choices: Web Services What does WSDL support? • Data type definitions • Messages supported • Operations supported • Port type (an aggregation of messages and operations) • Binding (what protocol supports the service – ala SOAP) • Port – target address where service is available • Service – aggregation of port types Web Services: WSDL

  4. Web Service Port Type Port Type Port Type Operation Operation Operation Operation Operation Operation Operation Operation Operation Binding Binding Binding Binding Binding Binding Binding Binding Binding Platform Choices: Web Services WSDL service • WSDL specifications are published in a URL. • Clients download this specification, pick a particular protocol to communicate with the service (binding), and use that protocol. Web Services: WSDL

  5. Platform Choices: Web Services Simple Object Access Protocol(SOAP)

  6. Platform Choices: Web Services SOAP: What is it? A Simple Protocol that allows you to Access an Object through the net. Web Services: SOAP Courtesy: Yan Liu, my student.

  7. Platform Choices: Web Services SOAP Motivations • Heterogeneous systems must be able to communicate • Binary protocols don’t always work • CORBA, DCOM, etc. don’t work well through firewalls • Nobody can agree on a standard binary format (usually due to platform-related issues) • We’re dealing with many heterogeneous environments (MVS, Unix, Windows NT, Linux, PalmOS, etc.) • Component runtimes differ • Security models differ (Kerberos, NTLM, OSF-DCE) Web Services: SOAP Courtesy: Yan Liu, my student.

  8. Platform Choices: Web Services SOAP is a specification for defining… • an encoding style that uses XML to represent information graphs • a standard way to move XML with HTTP • rules for passing messages • error (fault) definition • a medium for performing Remote Procedure Calls (RPC) • one layer in a multi-layer architecture Web Services: SOAP Courtesy: Yan Liu, my student.

  9. Platform Choices: Web Services SOAP contains four parts: • An extensible envelope expressing (mandatory): • what features and services are represented in a message; • who should deal with them, • whether they are optional or mandatory. • A set of encoding rules for data (optional): • Exchange instances of application-defined data types and directed graphs • Uniform model for serializing abstract data models that can not directly be expressed in XML schema • A convention for representation RPC (optional) • How to make calls and responses • A protocol binding to HTTP and HTTP-EF (optional) Web Services: SOAP Courtesy: Yan Liu, my student.

  10. <Envelope> <Header> <transId>1234</transId> </Header> <Body> <Add> <a>3</a> <b>4</b> </Add> </Body> </Envelope> c = Add(a, b) Platform Choices: Web Services SOAP: a simple example Web Services: SOAP Courtesy: Yan Liu, my student.

  11. Server <Envelope> <Header> <transId>1234</transId> </Header> <Body> <Add> <a>3</a> <b>4</b> </Add> </Body> </Envelope> Request <Envelope> <Header> <transId>1234</transId> </Header> <Body> <AddResponse> <c>7</c> </AddResponse> </Body> </Envelope> Response Client Platform Choices: Web Services System Flow (HTTP) Courtesy: Yan Liu, my student.

  12. Platform Choices: Web Services SOAP: example from healthcare Example Request <soap:Envelope> <header> …. </header> <soap:Body> <GetName> <MR#>123456</MR#> </GetName> </soap:Body> </soap:Envelope> Example Response <soap:Envelope> <header> …. </header> <soap:Body> <GetNameResponse> <Name>John Doe</Name> </GetNameResponse> </soap:Body> </soap:Envelope> Web Services: SOAP

  13. Server Client Web Service Application Interface Semantics Interface Semantics Envelope/Header/Body Envelope/Header/Body Message Encoding Message Encoding Transport (e.g. HTTP) Transport (e.g. HTTP) TCP/IP TCP/IP Platform Choices: Web Services SOAP execution Courtesy: Yan Liu, my student.

  14. Platform Choices: Web Services SOAP: Conclusions • Basis for Web services • Significant component of Microsoft’s .NET platform • Supported by everyone • Has a strong future Web Services: SOAP

  15. Platform Choices: Web Services Universal Description, Discovery and Integration:(UDDI)

  16. Platform Choices: Web Services UDDI: What is it? • A vehicle to locate operational web services • Similar to Domain Name Service (DNS) lookup • Embodies the concepts of “White Pages” and “Yellow Pages” Web Services: UDDI

  17. Platform Choices: Web Services UDDI elements • White Pages: Business Name, Contact Info, DUNS, etc. • Yellow Pages: Business categories, key-value pairs of relevant information • Green Pages: Technical information on how to connect to web services Web Services: UDDI

  18. Platform Choices: Web Services UDDI process supported • Business registers its web service (information that is put in white, yellow and green pages) • The information gets propagated to all UDDI servers (replicated) • Customers contact known registries • Locate appropriate services and invoke them • Main protocol supported is SOAP Web Services: UDDI

  19. Platform Choices: Web Services Web Services: current status • Evolving rapidly – strong support for SOAP, and decent support for WSDL • UDDI is a little further away. • All vendors are incorporating various components of Web Services • Web Services is the future; right now people have to deal with other component technologies

More Related