Distributed Systems and Networking Programmin(SOAP – Introduction)

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

EIE424 Distributed Systems and Networking Programming -PartIl 3.1 SOAP-Introduction SOAP Communication Styles SOAP supports two different communication styles RPC Style e Uses the soaP rPc conventions hence the communication method and procedure are governed by the conventions Conceptually similar to other RPCs The default of early SOAP implementations Document Style e Also known as message-oriented style ● Sending non-encodedⅩ ML content o Require more programming work on server and client sides to interpret the messages e More flexible communication and provides the best 6 interoperability
6 EIE424 Distributed Systems and Networking Programming –Part II 3.1 SOAP – Introduction SOAP Communication Styles ⚫ SOAP supports two different communication styles: – RPC Style ⚫ Uses the SOAP RPC conventions, hence the communication method and procedure are governed by the conventions ⚫ Conceptually similar to other RPCs ⚫ The default of early SOAP implementations – Document Style ⚫ Also known as message-oriented style ⚫ Sending non-encoded XML content ⚫ Require more programming work on server and client sides to interpret the messages ⚫ More flexible communication and provides the best interoperability

EIE424 Distributed Systems and Networking Programming -PartIl 3.1 SOAP-Introduction A Sample request in RPC Style 10016 Try to call the remote method getTemp with input parameter, a zipcode: 10016
7 EIE424 Distributed Systems and Networking Programming –Part II 3.1 SOAP – Introduction 10016 A Sample Request in RPC Style Try to call the remote method getTemp with input parameter, a zipcode: 10016

EIE424 Distributed Systems and Networking Programming -PartIl 3.1 SOAP-Introduction A Sample response in RPc Style 71.0 Return a double 71.0 which represents the temperature
8 EIE424 Distributed Systems and Networking Programming –Part II 3.1 SOAP – Introduction A Sample Response in RPC Style 71.0 Return a double 71.0 which represents the temperature

EIE424 Distributed Systems and Networking Programming -PartIl 3.1 SOAP-Introduction SOAP Messages o In most cases, we do not need to directly programming in SOAP o Dozens of SoAP implementations now freely exist on the Internet Apache SOAP(Axis) Microsoft soap toolkit o Allow generating SoAP messages automatically using High Level Language, e. g. Java, C++, Perl Understanding of SOAP message structure enables us to intercept a SoAP transaction and to debug a SOAP application
9 EIE424 Distributed Systems and Networking Programming –Part II 3.1 SOAP – Introduction SOAP Messages ⚫ In most cases, we do not need to directly programming in SOAP ⚫ Dozens of SOAP implementations now freely exist on the Internet – Apache SOAP (Axis) – Microsoft SOAP ToolKit ⚫ Allow generating SOAP messages automatically using High Level Language, e.g. Java, C++, Perl ⚫ Understanding of SOAP message structure enables us to intercept a SOAP transaction and to debug a SOAP application

EIE424 Distributed Systems and Networking Programming -PartIl 3.1 SOAP-Introduction Message SOAP Message Structure Envelope(mandatory) Header(optional) Body(mandatory) Fault(optional) 10
10 EIE424 Distributed Systems and Networking Programming –Part II 3.1 SOAP – Introduction Message Structure SOAP Message Envelope (mandatory) Header (optional) Body (mandatory) Fault (optional)
按次数下载不扣除下载券;
注册用户24小时内重复下载只扣除一次;
顺序:VIP每日次数-->可用次数-->下载券;
- Coded Caching under Arbitrary Popularity Distributions.pptx
- 东南大学:《泛型编程 Generic Programming》课程教学资源(PPT课件讲稿)Chapter 14 Templates.ppt
- 华中科技大学:《面向对象程序设计》课程PPT教学课件(Visual C++ 编程)第2讲 Visual C++ 6.0开发环境.ppt
- 《编译原理实践》课程教学资源(PPT讲稿)词法分析程序的自动生成器LEX.ppt
- 《Java语言程序设计》课程教学资源(PPT课件讲稿)第四章 Applet及其应用.ppt
- 《计算机组装与维修》课程教学资源(PPT讲稿)第7章 显示器.ppt
- 计算机问题求解(PPT讲稿)算法在计算机科学中的地位(算法的效率).pptx
- 西安电子科技大学:《Mobile Programming》课程PPT教学课件(Android Programming)Lecture 9 Service and Broadcast Receiver.pptx
- 泛型编程 Generic Programming(PPT讲稿)Templates.ppt
- 北京大学SAS俱乐部:SAS软件会员培训(PPT讲稿)SAS编程语言入门.ppt
- 中国科学技术大学:《数据结构及其算法》课程电子教案(PPT课件讲稿)第三章 栈和队列.pps
- 白城师范学院:《数据库系统概论 An Introduction to Database System》课程教学资源(PPT课件讲稿)第六章 关系数据理论.pptx
- 安徽广播影视职业技术学院:《ASP动态网页设计实用教程》课程教学资源(PPT讲稿)第1章 ASP基础(贾海陶).ppt
- 《MATLAB应用基础》课程教学资源(PPT课件讲稿)第4章 MATLAB的数值计算.ppt
- 《编译原理》课程教学资源(PPT课件讲稿)第七章 中间代码生成.ppt
- 上海交通大学:Basic Raster Graphics Algorithms for Drawing 2D Primitives.ppt
- Transport Layer Identification of P2P Traffic.ppt
- 复旦大学:《数据库基础与应用》课程PPT教学课件(Access案例教程)第1章 数据库基础知识.pptx
- 香港科技大学:Advanced Topics in NextGeneration Wireless Networks.ppt
- 《编译原理》课程教学资源(PPT课件讲稿)第五章 语法分析——自下而上分析.ppt
- 北京师范大学现代远程教育:《计算机应用基础》课程教学资源(PPT课件讲稿)第5章 Microsoft Excel 2010.pptx
- 图形处理及多媒体应用(PPT课件讲稿).pps
- Vitebi 译码.ppt
- 香港城市大学:Rank Aggregation in MetaSearch.ppt
- 《计算机网络技术》课程教学资源(PPT课件讲稿)第5章 广域网.ppt
- 中国科学技术大学:《现代密码学理论与实践》课程教学资源(PPT课件讲稿)第二部分 公钥密码和散列函数 第8章 数论入门(苗付友).pptx
- 中国科学技术大学:《计算机体系结构》课程教学资源(PPT课件讲稿)向量体系结构.pptx
- 南京大学:《面向对象技术 OOT》课程教学资源(PPT课件讲稿)面向对象的分析与设计简介 OOA & OOD:An introduction.ppt
- 北京师范大学现代远程教育:《计算机应用基础》课程教学资源(PPT课件讲稿)第1章 计算机常识(主讲:马秀麟).pptx
- 《并发控制技术》课程教学资源(PPT课件讲稿)第7章 事务管理 transaction management.ppt
- 山东大学软件学院:非线性规划(PPT讲稿)一维搜索方法.ppt
- 合肥工业大学:《计算机网络技术》课程教学资源(PPT课件讲稿)第4章 交换网的运行.ppt
- 长春工业大学:《网页设计与制作》课程教学资源(PPT课件)第5章 Div+CSS布局技术.ppt
- 《网络搜索和挖掘关键技术 Web Search and Mining》课程教学资源(PPT讲稿)Lecture 09 Evaluation.ppt
- 上海交通大学:《计算机图形学 Computer Graphics》课程教学资源(PPT讲稿)CHAPTER 4 THE VISUALIZATION PIPELINE.pptx
- 香港中文大学:XML for Interoperable Digital Video Library.ppt
- 中国医科大学计算机中心:《虚拟现实与增强现实技术概论》课程教学资源(PPT课件讲稿)第3章 虚拟现实系统的输出设备.pptx
- 同济大学:《大数据分析与数据挖掘 Big Data Analysis and Mining》课程教学资源(PPT课件讲稿)K-means & EM.pptx
- 北京大学:文本挖掘技术(PPT讲稿)文本分类 Text Categorization.ppt
- 《网页设计与制作》课程教学资源(PPT课件讲稿)第一章 HTML基础.ppt