EIE424 Distributed Systems and Networking Programming -PartIl 3.1 SOAP-Introduction 3.1 SOAP- Introduction
1 EIE424 Distributed Systems and Networking Programming –Part II 3.1 SOAP – Introduction 3.1 SOAP – Introduction
EIE424 Distributed Systems and Networking Programming -PartIl 3.1 SOAP-Introduction What is soAP? SOAP is an XML-based protocol for exchanging information between computers o Mainly use for performing remote procedure calls transported via Http e Different from corba. dcom or java rmi SOAP messages are entirely written in XML o Hence platform and language independent E.g. SOAP java client running on Linux can connect to a Microsoft SOAP server running on Windows XP At the same time a perl client running on Solaris can 2 also connect to the same soap server
2 What is SOAP? ⚫ SOAP is an XML-based protocol for exchanging information between computers ⚫ Mainly use for performing remote procedure calls transported via HTTP ⚫ Different from CORBA, DCOM or Java RMI, SOAP messages are entirely written in XML ⚫ Hence platform and language independent – E.g. SOAP java client running on Linux can connect to a Microsoft SOAP server running on Windows XP – At the same time, a Perl client running on Solaris can also connect to the same SOAP server EIE424 Distributed Systems and Networking Programming –Part II 3.1 SOAP – Introduction
EIE424 Distributed Systems and Networking Programming -PartIl 3.1 SOAP-Introduction What does soAP Define? o SOAP envelope specification Specify the rules for encapsulating data being transferred between computers In case of failure define how to encode error messages ● Data encoding rules Define how the data are encoded E.g. the rule to encode floating point numbers Most conventions are based on the w3c XMl schema RPC conventions Define how a rpc can be proceeded E.g. how to specify the procedure name, pass parameters 3 and receive response(returned results
3 EIE424 Distributed Systems and Networking Programming –Part II 3.1 SOAP – Introduction What does SOAP Define? ⚫ SOAP envelope specification – Specify the rules for encapsulating data being transferred between computers – In case of failure, define how to encode error messages ⚫ Data encoding rules – Define how the data are encoded – E.g. the rule to encode floating point numbers – Most conventions are based on the W3C XML Schema ⚫ RPC conventions – Define how a RPC can be proceeded – E.g. how to specify the procedure name, pass parameters and receive response (returned results)
EIE424 Distributed Systems and Networking Programming -PartIl 3.1 SOAP-Introduction SOAP VS XML-RPC Similarities Use XML for messaging Messages are usually embedded into Http header Use request/response mechanism Mainly use in remote procedure call Platform independent Language independent Differences SOAP messages are more complicated than XML-RPC Make use of XML namespaces and XML schemas Hence give a standard way for data encoding and RPC 4 Thus allow automatic method invocation on the Web
4 SOAP vs XML-RPC ⚫ Similarities – Use XML for messaging – Messages are usually embedded into HTTP header – Use request/response mechanism – Mainly use in remote procedure call – Platform independent – Language independent ⚫ Differences – SOAP messages are more complicated than XML-RPC – Make use of XML namespaces and XML Schemas – Hence give a standard way for data encoding and RPC – Thus allow automatic method invocation on the Web EIE424 Distributed Systems and Networking Programming –Part II 3.1 SOAP – Introduction
EIE424 Distributed Systems and Networking Programming -PartIl 3.1 SOAP-Introduction SOAP in Action Http --E XMI SOAP Request SOAP SOAP client server SOAP Response Http XML Hence soap messages can be delivered via the web 5
5 EIE424 Distributed Systems and Networking Programming –Part II 3.1 SOAP – Introduction SOAP in Action SOAP client SOAP server XML XML HTTP HTTP SOAP Response SOAP Request Hence SOAP messages can be delivered via the Web