14
SOAP TECHNOLOGY What is SOAP ? • SOAP is a simple, lightweight XML protocol for exchanging exchanging structured and typed information on the Web • Extensible • No application semantics and no transport semantics

SOAP TECHNOLOGY What is SOAP ? SOAP is a simple, lightweight XML protocol for exchanging exchanging structured and typed information on the Web Extensible

Embed Size (px)

Citation preview

Page 1: SOAP TECHNOLOGY What is SOAP ? SOAP is a simple, lightweight XML protocol for exchanging exchanging structured and typed information on the Web Extensible

SOAP TECHNOLOGY

What is SOAP ?

• SOAP is a simple, lightweight XML protocol for exchanging exchanging structured and typed information on the Web

• Extensible

• No application semantics and no transport semantics

Page 2: SOAP TECHNOLOGY What is SOAP ? SOAP is a simple, lightweight XML protocol for exchanging exchanging structured and typed information on the Web Extensible

Who is drafting SOAP ?

UserLand, Ariba, CommerceOne, Compaq, Developmentor, HP, IBM, IONA, Lotus, Microsoft, SUN and SAP.

SOAP specification v1.1 already a W3C standard. v1.2 has recently been submitted.

Page 3: SOAP TECHNOLOGY What is SOAP ? SOAP is a simple, lightweight XML protocol for exchanging exchanging structured and typed information on the Web Extensible

Why SOAP? Important need in Internet application

development to allow communication between apps.

The politics of serialization : Several large factions each loyal to its own particular RPC ( remote procedure call ) protocol - DCOM, CORBA , Java RMI

SOAP addresses the interoperability issue at the data serialization level

Page 4: SOAP TECHNOLOGY What is SOAP ? SOAP is a simple, lightweight XML protocol for exchanging exchanging structured and typed information on the Web Extensible

Bringing down the walls These systems could interact using bridges but

they add costs and hurt performance.

Made decisions to standardize on one or the other ; then used message-oriented middleware for integration.

If Web browsers can, why not remote services?

SOAP - simplicity, flexibility, platform-neutrality and text-based.

Page 5: SOAP TECHNOLOGY What is SOAP ? SOAP is a simple, lightweight XML protocol for exchanging exchanging structured and typed information on the Web Extensible

RPC revisited

SOAP - a standard way of serializing the info. needed to invoke remote services into a format and transported across the wire, then recreated at destination.

To understand SOAP better : a look at DCOM’s RPC architecture.

Primary design goal of DCOM was “location transparency”.

Page 6: SOAP TECHNOLOGY What is SOAP ? SOAP is a simple, lightweight XML protocol for exchanging exchanging structured and typed information on the Web Extensible

DCOM Architecture

Location transparency in DCOM using the proxy/stub architecture. DCOM uses the NDR serialization scheme.

SOAP uses XML to structure the data serialization.

Page 7: SOAP TECHNOLOGY What is SOAP ? SOAP is a simple, lightweight XML protocol for exchanging exchanging structured and typed information on the Web Extensible

SOAP and...HTTP ?!

More than a data serialization format to do real RPC….transfer messages to the server and return the response.

DCOM and CORBA are incompatible when addressing endpoints, activating remote objects...

HTTP most conducive Internet Protocol for RPC via SOAP msgs : -URLs,Synch. Blocking, Scalable ,Secure

Page 8: SOAP TECHNOLOGY What is SOAP ? SOAP is a simple, lightweight XML protocol for exchanging exchanging structured and typed information on the Web Extensible

The Firewall blues DCOM and CORBA IIOP not firewall

friendly, use oddly-numbered ports etc.

HTTP traffic over port 80 usually can talk through firewalls.

SOAP messages treated as a new MIME type to be carried in a HTTP payload : so HTTP headers indicate packet has SOAP request , better firewall control.

Page 9: SOAP TECHNOLOGY What is SOAP ? SOAP is a simple, lightweight XML protocol for exchanging exchanging structured and typed information on the Web Extensible

SOAP building block

Page 10: SOAP TECHNOLOGY What is SOAP ? SOAP is a simple, lightweight XML protocol for exchanging exchanging structured and typed information on the Web Extensible

SOAP Building block ( cont’d ) A SOAP message is an ordinary XML

document.

The XML document contains the following XML elements:

- A SOAP envelope , defines message content

- A SOAP header(optional), contains header information

- A SOAP body, that contains call and response information

Page 11: SOAP TECHNOLOGY What is SOAP ? SOAP is a simple, lightweight XML protocol for exchanging exchanging structured and typed information on the Web Extensible

A SOAP Example

A SOAP request embedded in an HTTP Request:

<SOAP-ENV:Envelope> < SOAP-ENV:Body> <xmlns:m=“http://www.stock.org/stock”/> < m:GetStockPrice> < StockName>IBM</StockName> </m:GetStockPrice> </SOAP-ENV:Body> </SOAP-ENV:Envelope>

Page 12: SOAP TECHNOLOGY What is SOAP ? SOAP is a simple, lightweight XML protocol for exchanging exchanging structured and typed information on the Web Extensible

A SOAP Example (Cont’d )

A SOAP response embedded in an HTTP Response

<SOAP-ENV:Envelope> < SOAP-ENV:Body> <xmlns:m=“http://www.stock.org/stock”/> < m:GetStockPriceResponse> < StockName>113.81</StockName> </m:GetStockPriceResponse> </SOAP-ENV:Body> </SOAP-ENV:Envelope>

Page 13: SOAP TECHNOLOGY What is SOAP ? SOAP is a simple, lightweight XML protocol for exchanging exchanging structured and typed information on the Web Extensible

SOAP Summary

SOAP is - a lightweight comm. protocol - is based on XML - designed to communicate via HTTP - not tied to any component technology

or programming language. - simple and extensible - a W3C standard

Page 14: SOAP TECHNOLOGY What is SOAP ? SOAP is a simple, lightweight XML protocol for exchanging exchanging structured and typed information on the Web Extensible

Thankyou!