1 / 14

SOAP - Simple Object Access Protocol -

Pu ş ca ş Radu , 342 C5. SOAP - Simple Object Access Protocol -. Servicii Web. Ce sunt serviciile Web? Ce rol are un serviciu Web? Cum arat ă un serviciu Web?. Arhitecturi bazate pe servicii Web. Just-In-Time integration – integrarea dinamic ă a serviciilor, independent de platform ă

karly-dale
Download Presentation

SOAP - Simple Object Access Protocol -

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Puşcaş Radu , 342 C5 SOAP-Simple Object Access Protocol-

  2. Servicii Web • Ce sunt serviciile Web? • Ce rol are un serviciu Web? • Cum arată un serviciu Web?

  3. Arhitecturi bazate pe servicii Web • Just-In-Time integration – integrarea dinamică a serviciilor, independent de platformă • Implementarea arhitecturii • Lipsurile stivei

  4. SOAP • Simple Object Access Protocol • Protocol standard pentru impachetarea mesajelor comunicate de aplicaţii • Oferă un învelişîn care informaţia este transportată • Se bazează pe XML • Oferă un set de reguli pentru transformarea datelor folosite de aplicaţii in XML-uri

  5. Mesaje XML • Oferă o cale accesibilă aplicaţiilor pentru a comunica între ele • Independete de platforma • Tipuri de mesaje – RPC şi EDI • Definirea unui XML - <phoneNumber>(123) 456-7890</phoneNumber> - <phoneNumber> <areaCode>123</areaCode> <exchange>456</exchange> <number>7890</number> </phoneNumber> - <phoneNumber area="123" exchange="456" number="7890" /> - <phone area="123"> <exchange>456</exchange> <number>7890</number> </phone>

  6. Mesaje SOAP • Conţinutul unui mesaj SOAP • Header • Blocuri de informaţie • Body • Datele de trimis • In header sunt incluse informaţii despre • rutare, autentificare, conext, livrare • In body, poate intra orice sub forma de XML

  7. Exemplu de mesaj SOAP <s:Envelope xmlns:s="http://www.w3.org/2001/06/soap-envelope"> <s:Header> <m:transaction xmlns:m="soap-transaction" s:mustUnderstand="true"> <transactionID>1234</transactionID> </m:transaction> </s:Header> <s:Body> <n:purchaseOrder xmlns:n="urn:OrderService"> <from> <person>Christopher Robin</person> <dept>Accounting</dept> </from> <to> <person>Pooh Bear</person> <dept>Honey</dept> </to> <order> <quantity>1</quantity> <item>Pooh Stick</item></order> </n:purchaseOrder> </s:Body> </s:Envelope>

  8. SOAP faults Un tip de mesaj Informaţia conţinută: fault code fault string fault actor fault details Standard faults: VersionMismatch MustUnderstand Server Client

  9. SOAP fault - exemplu <s:Envelope xmlns:s="..."> <s:Header> <f:Misunderstood qname="abc:transaction" xmlns:="soap-transactions" /> </s:Header> <s:Body> <s:Fault> <faultcode>MustUnderstand</faultcode> <faultstring> Header(s) not understood </faultstring> <faultactor>http://acme.com</faultactor> </s:Fault> </s:Body> </s:Envelope>

  10. Căi şi actori Un mesaj SOAP poate trece prin mai mulţi intermediari pană să ajungă la destinaţie Standardul SOAP nu defineşte o metodă pentru definirea unei căi către destinaţia finală Atributul “actor”

  11. SOAP routing protocol Implementat de Microsoft Defineşte un standard pentru header-ele block pentru specificarea informaţiilor despre rutare <s:Header> <m:path xmlns:m="http://schemas.xmlsoap.org/rp/" s:mustUnderstand="true"> <m:action>http://www.im.org/chat</m:action> <m:to>http://D.com/some/endpoint</m:to> <m:fwd> <m:via>http://B.com</m:via> <m:via>http://C.com</m:via> </m:fwd> <m:rev><m:via/></m:rev> <m:from>mailto:johndoe@acme.com</m:from> </m:path> </S:Header>

  12. Tipuri Sunt definite 3 moduri pentru definirea unui tip: 1. Folosirea xsi:type pentru fiecare nod <person><name xsi:type="xsd:string">John Doe</name></person> 2. Referirea unui XML Schema care defineşte un anumit tip <person xmlns="personschema.xsd"><name>John Doe</name></person> 3. Referirea unui XML Schema care defineşte un element particular in interiorul lui <person xmlns="urn:some_namespace"><name>John Doe</name> </person>

  13. SOAP in HTTP HTTP e cel mai folosit protocol pentru transmiterea de mesaje SOAP SOAP oferă tratament special pentru HTML Se foloseşte modelul Request – Respond POST /StockQuote HTTP/1.1 Content-Type: text/xml Content-Length: nnnn SOAPAction: "urn:StockQuote#GetQuote" <s:Envelope xmlns:s="http://www.w3.org/2001/06/soap-envelope"> ... </s:Envelope>

  14. Avantaje şi dezavantaje Avantaje SOAP este capabil sa fie folosit de mai multe protocoale de transport Oferind suport pentru HTTP, poate trece usor prin firewall-uri/proxy fară a fi nevoie de modificarea protocolului Dezavantaje Datorită formatului XML poate fi lent in cazul mesajelor mari Datorită folosirii HTTP pentru transport in loc de WS-Addressing sau ESB, rolurile sunt fixate in cadru comunicării

More Related