SOAP Patrick Allison UTA CSE 5306 Presentation Outline

  • Slides: 20
Download presentation
SOAP Patrick Allison UTA: CSE 5306

SOAP Patrick Allison UTA: CSE 5306

Presentation Outline • Introduction • SOAP • History • Technical Architecture • SOAP in

Presentation Outline • Introduction • SOAP • History • Technical Architecture • SOAP in Industry • Summary • References

Introduction • World Wide Web Consortium (W 3 C) Definition • A Web service

Introduction • World Wide Web Consortium (W 3 C) 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

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

Introduction

Introduction

Introduction Other terms in the literature • Representational State Transfer (REST) • • •

Introduction Other 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 • Java. Script Object Notation (JSON) • An alternative to XML for representing data

Simple Object Access Protocol • Definition – World Wide Web Consortium (W 3 C)

Simple Object Access Protocol • Definition – World Wide Web Consortium (W 3 C) 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

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

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 W 3 C recommendation on June 24, 2003 • Companies involved with its development • Microsoft • HP • IBM • SAP • Develop. Mentor

Technical Architecture • Publishing and Consuming SOAP-Based Web Services • MS. NET Windows Communication

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)

Technical Architecture • Create Client to consume the service • . NET Application •

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 Web Service Consumer (Client Code) Service Reference Proxy Class WSDL Copy

Technical Architecture • Proxy Class handles the mechanism required for service method calls •

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 Architecture Client Code Network Proxy Object SOAP Web Service

Technical Architecture Client Code Network Proxy Object SOAP Web Service

SOAP in Industry • Microsoft SOAP Toolkit 3. 0 • Incorporated into the. NET

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 • Pay. Pal SOAP API

SOAP in Industry • National Weather Service

SOAP in Industry • National Weather Service

SOAP in Industry • Amazon. com

SOAP in Industry • Amazon. com

Summary • Terminology associated with SOAP • Web Service • REST • History of

Summary • Terminology associated with SOAP • Web Service • REST • History of SOAP • W 3 C 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 3 rd edition • http: //docs. amazonwebservices. com/Amazon.

References • C# 2008 for Programmers 3 rd edition • http: //docs. amazonwebservices. com/Amazon. EC 2/dg/200610 -01/using-soap-api. html • http: //en. wikipedia. org/wiki/SOAP • http: //msdn. microsoft. com/en-us/library/ms 950803. aspx • http: //www. w 3. org/TR/soap 12 -part 1/ • Martin Tsenov, Application of SOAP Protocol in E-Commerce Solution, 2002 First International IEEE Symposium "Intelligent Systems", September 2002

References • Francisco Curbera, Matthew Duftler, Rania Khalaf, William Nagy, Nirmal Mukhi, and Sanjiva

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. w 3. org/TR/2003/REC-soap 12 -part 0 -20030624