Unformatted text preview:

Service-Oriented Computing Service-Oriented Computing Services A step back: building on the Web Next steps: the Semantic Web Next steps: Integrating Processes Next steps: The Pragmatic Web Returning to Services Web Services Architectural Model Basic components of Web Services Design concepts SOAP SOAP request example SOAP reply example Limitations of SOAP Describing Services WSDL WSDL Example pt 1 WSDL Example pt 2 WSDL Example, pt 3 WSDL Example, pt 4 WSDL Example, pt 5 WSDL Example, pt 6 WSDL Example, pt 7 Using WSDL Discovery UDDI UDDI Tools for generating SOAP and WSDL REST REST REST REST Philosophy REST vs SOAP REST vs SOAP REST vs SOAP REST vs SOAP SummaryDistributed SoftwareDevelopmentWeb ServicesChris BrooksDepartment of Computer ScienceUniversity of San FranciscoDepartment of Computer Science — University of San Francisco – p. 1/??Service-Oriented Computing•Services are the hot new model for providing access to dataor functionality in a distributed system.•Like objects and agents, the definition of what a service isdepends on who you ask.•Microsoft: A piece of business logic available via the Internet using open standards.•DestiCorp: Encapsulated, loosely coupled contracted software functions offered viastandard protocols over WWW•Gartner: Loosely coupled software coponents t hat interact with one anotherdynamically via standard Internet technologies.•W3C: A software application identified by a URI, whose interfaces and binding arecapable of being defined, described, and discovered by XML artifacts and supportsdirect interactions with other software applications using XML-based messages viaInternet-based technologies.Department of Computer Science — University of San Francisco – p. 2/??Service-Oriented Computing•Common threads:•Network-available•Open standards/protocols•Loose coupling•Dynamic composition•Publically available interfaceDepartment of Computer Science — University of San FranciscoServices•We can think of a service as (yet another) computingmetaphor.•modular functionality•Can be composed, extended and combined to provide morecomplex or extensive services.•This ability to compose and repurpose web services isextremely important.•Example: Google Maps.•Defined in terms of an interfaceDepartment of Computer Science — University of San Francisco – p. 4/??A step back: building on the Web•Currently, the Web consists primarily of statelessclient-server interactions.•Web pages are the predominant objects exchanged.•No central authority.•Heterogenous, autonomous components.Department of Computer Science — University of San Francisco – p. 5/??Next steps: the Semantic Web•Today’s Web is structured for use by humans.•HTML focuses on presentation; semantics are inferredthrough background knowledge.•Example: Find the price on an Amazon page.•Program-program communication on the Web requires moreexplicit markup.•A program needs to know the meaning (or semantics) of anelement.•Separation of structure and layout from information.Department of Computer Science — University of San FranciscoNext steps: Integrating Processes•Currently, most web-based interactions are stateless.•Client makes a request and returns a response.•Processes may require long-lived multi-part interactions.•Construction of supply chains, complex orders•Services can be composed into processes.•Currently, this is done manually.Department of Computer Science — University of San Francisco – p. 7/??Next steps: The Pragmatic Web•These combine to yield what Singh and Huhns call thepragmatic web.•Information is annotated according to its meaning and itsplace in a larger process.•In other words, information can have annotations thatdescribe meaning and context.•This provides the basis for automated negotiation.•This is only one possible way in which the Web may evolve,but it is one that will allow for rich, complex, dynamicinteractions between software components.Department of Computer Science — University of San Francisco – p. 8/??Returning to Services•Processes are being developed, often in an ad hoc way.•Pragmatics are still primarily a research area.•Basic standards for automated Web services are beingquickly developed.•First step in incorporating programs as consumers ofinformation, rather than just producers.Department of Computer Science — University of San FranciscoWeb Services Architectural ModelS ervi ceProvid erServiceBrokerS ervi ceRequester1 .Publish(WSDL)2.Discover(UDDI)3.Bi nd(SOAP ,HTTP)•A Web servicearchitecture consists ofthree types ofparticipants:•Service providers•Service brokers•Service requesters•XML is used as the basic’glue’ language.Department of Computer Science — University of San Francisco – p. 10/??Basic components of Web Services•HTTP•SOAP•XML•XML Schema•UDDIDepartment of Computer Science — University of San Francisco – p. 11/??Design concepts•Language and platform independence•Use existing, scalable technology•HTTP as transport mechanism•Simple request-response semantics•Avoids firewall issues.Department of Computer Science — University of San Francisco –SOAP•SOAP (Simple Object Access Protocol) is a protocol forexchanging XML messages via HTTP.•Evolved out of XML-RPC, a protocol for performing remoteprocedure calls using XML as a message-encoding language.•SOAP consists of an envelope that encodes the message,and a body that contains the details of the service beinginvoked.•On a request, the body will contain the method beinginvoked and any parameters.•On a reply, the body will contain the result of the method’sexecution.Department of Computer Science — University of San Francisco – p. 13/??SOAP request examplePOST /temp HTTP/1.1Host: www.socweather.comContent-Type: text/xml; charset="utf-8"Content-Length: xxxSOAPAction: "http://www.socweather.com/temp"<!-- Above: HTTP headers and blank line. This line and below: an XML docu-ment --><?xml version=’’1.0’’?><env:Envelopexmlns:env="http://schemas.xmlsoap.org/soap/envelope/"env:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/><env:Body><m:GetTemp xmlns:m="http://www.socweather.com/temp.xsd"><m:City>Honolulu</m:City><m:When>now</m:When></m:GetTemp></env:Body></env:Envelope>Department of Computer Science — University of San Francisco – p. 14/??SOAP reply exampleHTTP/1.1 200 OKContent-Type: text/xml; charset="utf-8"Content-Length:


View Full Document

USF CS 682 - Web Services

Documents in this Course
Load more
Download Web Services
Our administrator received your request to download this document. We will send you the file to your email shortly.
Loading Unlocking...
Login

Join to view Web Services and access 3M+ class-specific study document.

or
We will never post anything without your permission.
Don't have an account?
Sign Up

Join to view Web Services 2 2 and access 3M+ class-specific study document.

or

By creating an account you agree to our Privacy Policy and Terms Of Use

Already a member?