Presentation on theme: "SOAP 20041094 Lee Jong-uk. Introduction What is SOAP? The features of SOAP The structure of SOAP SOAP exchange message model & message Examples of SOAP."— Presentation transcript:
Introduction What is SOAP? The features of SOAP The structure of SOAP SOAP exchange message model & message Examples of SOAP Conclusion
What is SOAP? The Simple Object Access Protocol An interapplication communication mechanism. The protocol that is to perform calling to each of components that existed in networks based on XML and HTTP. This form is one of the existed RPC.
The features of SOAP It uses HTTP of application layer protocol. Why use HTTP? – Most of all, because of the property of commonplace. How about security? - It sends the certain HTTP header to filter entering firewall. SOAP is Message Based Protocol. It can rise the speed & utility factor. It is so simple. -> S(imple)OAP
The structure of SOAP SOAP envelope - Provide entire frameworks SOAP encoding rules - The mechanism to exchange instance SOAP RPC - Define the regulation to appear responses & RPC SOAP binding - Define the regulation about exchanging SOAP envelope using transmission protocol
SOAP Message Exchange Model is made up of web server, XML, service provider. The Action of SOAP 1) Clients request index of services leading HTTP that is a form of XML. 2) Servers response the index of services that can offer by themselves leading XML. 3) After clients find the wanted services, clients request the services to provider again. 4) After provider process by request, the result return to clients.
SOAP Message POST /StockQuote HTTP/1.1 Host: www.stockquoteserver.com Content-Type: text/xml; charset="utf-8" Content-Length: nnnn SOAPAction: "http://example.org/"............ This is the structure of SOAP message in HTTP request. SOAP communicates by XML. The root tag. It indicates start of SOAP message. The extra information. It can omit. The major tag. It includes various tags. The request and response about service.
Example 1. Request Message POST /StockQuote HTTP/1.1 Host: www.stockquoteserver.com Content-Type: text/xml; charset="utf-8" Content-Length: nnnn SOAPAction: "http://example.org/2001/06/quotes" <m:GetLastTradePrice env:encodingStyle="http://www.w3.org/2001/06/soap-encoding" xmlns:m="http://example.org/2001/06/quotes"> DIS Request the information of LastTracePrice in provider. Require the value of DIS.
Example 2. Response Message HTTP/1.1 200 OK Content-Type: text/xml; charset="utf-8" Content-Length: nnnn <m:GetLastTradePriceResponse env:encodingStyle="http://www.w3.org/2001/06/soap- encoding" xmlns:m="http://example.org/2001/06/quotes"> 34.5 ‘Response’ is attached in service name (GetLastTracePriceResponse). Contain the result value of request.
The tags of SOAP SOAP Envelope - SOAP is The XML document that is made up of SOAP envelope that is a require item, SOAP Header that can omit, and SOAP Body. SOAP Header - The compatible structure that can extend the message without any regulation. SOAP Body - Simple mechanism to exchange necessary information.
Fault Code SOAP uses the Fault element to report error. faultcode : It is used to distinguish the error using certain error numbers. faultstring : It writes the simple reason or title about error. faultactor : It express the information who cause the error in path of message. detail : It writes the specific information of error.
Example of Fault Code <env:Envelope xmlns:env='http://www.w3.org/2001/06/soap-envelope' xmlns:f='http://www.w3.org/2001/06/soap-faults' > <f:Misunderstood qname='abc:Extension1' xmlns:abc='http://example.org/2001/06/ext' /> <f:Misunderstood qname='def:Extension2' xmlns:def='http://example.com/stuff' /> MustUnderstand One or more mandatory headers not understood
Conclusion & Discussion SOAP calls some interface or method using XML and HTTP. The transport of SOAP is HTTP. The probability that SOAP is substituted any distributed object protocols is very high.