Introduction SOAP History Technical Architecture SOAP in Industry Summary References.
-
Upload
rosaline-antonia-casey -
Category
Documents
-
view
238 -
download
0
Transcript of Introduction SOAP History Technical Architecture SOAP in Industry Summary References.
SOAP
Patrick Allison
UTA: CSE 5306
Presentation Outline
• Introduction• SOAP• History• Technical Architecture• SOAP in Industry• Summary• References
Introduction
• World Wide Web Consortium (W3C) Definition• A Web service is a software application identified by a URI, whose
interfaces and bindings are capable of being defined, described, and discovered as XML artifacts. A Web service supports direct interactions with other software agents using XML-based messages exchanged via Internet-based protocols
• Programmer’s Viewpoint• Web Service – is a class that allows its methods to be called by methods
on other machines via common data format such as Extensible Mark Up Language (XML) and common transport protocols such as Hyper Text Transport Protocol (HTTP)
Introduction• Web Service Host – The machine on which the web service
resides• Network Method Call – The client application sends a method
call over the network to the web service host• Service Host Response – The web service host will process
the call and return a response over the network to the client application
• Web Service Advantages • An application without direct access to data on another
system might be able to access the data via a web service• An application without sufficient processing power
resources necessary to perform specific computations could use a web service to take advantage of other system’s superior resources
Introduction
Introduction
IntroductionOther terms in the literature • Representational State Transfer (REST)
• An architectural style of implementing web services • RESTful web services (eg. Amazon web services – aws.amazon.com)• REST is not a standard
• Extensible Mark Up Language (XML) • Data format
• JavaScript Object Notation (JSON)• An alternative to XML for representing data
Simple Object Access Protocol• Definition – World Wide Web Consortium (W3C) describes SOAP as a lightweight protocol intended for exchanging structured information in a decentralized environment• Version is 1.2• SOAP is a standard•SOAP is in the same family of protocols as:
• Distributed Component Object Model (DCOM)• Common Object Request Broker Architecture (CORBA)
•SOAP is an improvement on these older protocols• DCOM & CORBA binary protocols• SOAP transferred data in plain text format • Plain text allows data transfers through web servers firewall
Introduction•Java Remote Method Invocation (Java RMI)
•Java specific and a binary protocol
•SOAP is language independent• SOAP standard does not incorporate internal security into the protocol
Histroy•Development began in 1998•Emphasis was on accessing DCOM and CORBA objects across distributed systems•Development shifted away from objects towards a generalized XML messaging framework•SOAP Version 1.2 became a W3C recommendation on June 24, 2003•Companies involved with its development
• Microsoft• HP• IBM• SAP• DevelopMentor
Technical Architecture•Publishing and Consuming SOAP-Based Web Services
• MS .NET Windows Communication Foundation (WCF)
•Create WCF Service• Visual Web Developer (VWD)• VWD creates a WCF service class• SOAP is the default protocol for WCF web services, so no
special configuration is required to create them• Methods to be made available as a service to other
applications are defined in the service class• Web service will normally contain a service description• XML document that conforms to the Web Service
Description Language (WSDL)
•LL
Technical Architecture•Create Client to consume the service
• .NET Application• Add a service reference to the client• Service Description – Service functionality and how to use it
Service Reference
Proxy Class WSDL Copy
Web Service Consumer
(Client Code)
Technical Architecture•Proxy Class handles the mechanism required for service method calls
• Networking details • Creating SOAP messages
•Web Service Transaction• Web service will receive requests as a SOAP message• Web service executes the method call• Web service sends back the results of the request as
another SOAP message• Proxy class deserializes the SOAP message• Proxy class returns the result to the client application
Technical ArchitectureClient
SOAP Web Service
Client Code
Proxy Object
Network
SOAP in Industry•Microsoft SOAP Toolkit 3.0
• Incorporated into the .NET Framework
•Google SOAP Search API • Replaced with Google’s REST API as of August 31, 2009
•PayPal SOAP API
SOAP in Industry•National Weather Service
SOAP in Industry•Amazon.com
Summary•Terminology associated with SOAP
• Web Service• REST
•History of SOAP• W3C recommended standard June 2003
•Technical Architecture• .NET Framework Implementation• Creating WCF Web Service• Creating a client
•SOAP in Industry• Microsoft• Amazon• National Weather Service
References•C# 2008 for Programmers 3rd edition•http://docs.amazonwebservices.com/AmazonEC2/dg/2006-10-01/using-soap-api.html
•http://en.wikipedia.org/wiki/SOAP•http://msdn.microsoft.com/en-us/library/ms950803.aspx•http://www.w3.org/TR/soap12-part1/
•Martin Tsenov, Application of SOAP Protocol in E-Commerce Solution, 2002 First International IEEE Symposium "Intelligent Systems", September2002
References•Francisco Curbera, Matthew Duftler, Rania Khalaf,William Nagy, Nirmal Mukhi, and Sanjiva Weerawarana,
Unraveling the Web Services Web: An Introduction to SOAP, WSDL, and UDDI
•http://www.w3.org/TR/2003/REC-soap12-part0-20030624