版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、Web效力适用技术主讲:李伟刚liweigang西北工业大学软件与微电子学院.第八章 Web效力实现技术.主要内容Web效力开发方法Web效力运转环境AXIS基于AXIS的Web效力开发.第一节 Web效力开发方法.Two ApproachesServer ImplementationService InterfaceWSDLe.g. EJB/Java Class to WSDLe.g. WSDL contract as the interface & message descriptionServer InterfaceService ImplementationWSDLBottom UpT
2、op Down.Web 效力开发生命周期开发开发和测试 Web 效力实现、定义效力接口描画和定义效力实现描画。经过创建新的 Web 效力、把现有的运用程序变成 Web 效力由其它 Web 效力和运用程序组成新的 Web 效力提供 Web 效力的实现。部署向效力恳求者或效力注册中心发布效力接口和效力实现的定义Web 效力的可执行文件部署到执行环境运转调用 Web 效力Web 效力完全部署、可操作并且效力提供者可以经过网络访问效力管理继续的管理和运营 Web 效力运用程序。平安性、可用性、性能、效力质量和业务流程.构建Web Service1.编写代码2.打包以便布署3.布署到运用效力器4.创建W
3、SDL描画 5. 发布描画6. 发现-经过UDDI7. 绑定、调用.访问Web Service1. 开发新运用2. 查询UDDI3. 定位Web效力、下载其描画4. 根据描画创建Java client proxy 5. 在运用中编写调用Java client proxy methods 代码6. 测试运用7. Java client proxy经过SOAP调用Web service methods.第二节 Web效力运转环境.Web Service Runtime1. 提交恳求(参数)给运用效力器, 效力器调用Java servlet.2. Servlet调用本地Java proxy方法,pr
4、oxy调用SOAP客户端运转3. SOAP客户端发送HTTP恳求方法、参数给提供者.4. SOAP servlet预备方法和参数,instantiates效力bean,调用效力方法5.访问legacy资源6. SOAP servlet前往结果给恳求者SOAP client.7. SOAP client前往结果给Java proxy.8.servlet把结果放在一个data bean中,dispatch查询结果的JSP9. JSP发送HTML给用户,页面中包含有效力前往的结果.第三节 AXIS.Axis IntroductionAxis是Apache组织推出的Web效力引擎Axis本质上就是一个
5、Web效力引擎,提供创建效力器端、客户端和网关SOAP操作的根本框架。但Axis还包括:一个独立的Web Service效力器。一个嵌入Servlet引擎Tomcat的效力器。支持WSDL。提供转化WSDL为Java类的工具。提供例子程序。提供TCP/IP数据包监视工具。.Axis2体系构造AXIS 对象模型AXIs Object Model,AXIOM是 Apache Axis2 的 XML 对象模型内核层包含引擎、模块和部署框架一切其他组件都在内核之上的层中各种传输协议如 和 SMTP和数据绑定在 XML 和 Java 代码之间进展转换并不在中心中,由于它们是可插入的,因此提供了很大的灵敏
6、性一切其他相关技术如 Java API for XML Web Services (JAX-WS)都在 Axis2 之上的层次中 .AXIOMAXIOM是一个 XML 对象模型,设计用于提高 XML 处置期间的内存运用率和性能,基于 Pull 解析经过运用 Streaming API for XML (StAX) Pull 解析器,AXIOM可以控制解析过程,以提供延迟构建支持StAX经过提供一种基于事件迭代器(Iterator)的API让程序员去控制xml文档解析过程程序遍历这个事件迭代器去处置每一个解析事件,解析事件可以看做是程序拉出来的,也就是程序促使解析器产生一个解析事件然后处置该事件
7、,之后又促使解析器产生下一个解析事件,如此循环直到碰到文档终了符SAX也是基于事件处置xml文档,但却是用推方式解析,解析器解析完好个xml文档后,才产生解析事件,然后推给程序去处置这些事件DOM采用的方式是将整个xml文档映射到一颗内存树,这样就可以很容易地得到父节点和子结点以及兄弟节点的数据,但假设文档很大,将会严重影响性能延迟构建是指 AXIOM 不完全构建XML对象模型,而是基于用户的需求构建 .AXIOM续例子:从 XML 输入流中获得第一个人的 元素值 XML文档 Dihini Himahansi Female Colombo, Sri Lanka - Object model i
8、s being built only up to this point Thushari Damayanthi Female Elpitiya, Sri Lanka .AXIOM续优势尽能够仅运用能满足用户的需求的内存假设用户希望访问较大的文档中前面的数个字节或数千字节,那么延迟构建功能将改善该运用程序的内存需求情况可以从任何元素获得 StAX 事件,而不论能否完好构建了对象模型 运用案例:当 Axis2 作为中介传送时,假设需求仅读取 SOAP 音讯的 Header,AXIOM 将防止其读取整个 SOAP 音讯,使其具有很高的内存效率当 Web 效力实现可以直接运用 StAX 事件时,由于采
9、用了 AXIOM,Web 效力所需的内存非常小 .AXIOM续AXIOM 内置了音讯传输优化机制Message Transfer Optimization Mechanism,MTOM支持对于 AXIOM 体系构造,可以经过实现 AXIOM 接口并将其插入到 Axis2 中来执行本人的对象模型AXIOM 提供了构建于根底 AXIOM API 之上的 SOAP 接口 可以运用 envelope.getHeaders 和 envelope.getBody 之类的便利方法查看 SOAP .可扩展音讯传送引擎Axis2 是一个纯 SOAP 处置器,并不依赖于任何 Java 特定的规范 引擎经过传输协议
10、接纳到音讯后,将调用之前注册的一系列拦截器称为处置程序处置程序通常处置 SOAP Header 内的信息,也可以同时对音讯的其他部分进展处置 随后会将音讯传送给音讯接纳者普通将此音讯传送给效力实现类进展处置 .可扩展音讯传送引擎 续Axis2 的管道模型 Axis2 引擎的传入音讯会经过“In管道。一切传出音讯都会经过“Out管道经过组合运用不同数量的 In 和 Out 管道,Axis2 可以处置任何 MEPMessage Exchange Pattern阶段每个 Axis2 管道内部被逻辑划分为名为阶段 (Phase) 的区域按特定的方式对这些阶段进展命名,以表示在该阶段对音讯的处置方式这些
11、阶段都会有用途,特别是尝试部署新处置程序时,由于我们可以指定处置程序需求在哪个阶段中执行 .可扩展音讯传送引擎 续上下文层次构造 Axis2 环境需求在不同的级别保管信息例如,整个引擎公用的信息应该在系统级别进展维护,而音讯级别的信息应该保管在音讯级别。有些信息是动态的,而有些信息是静态的为了处置这些不同的需求,Axis2 提供了上下文层次构造来在不同级别维护信息 .可扩展音讯传送引擎 续调度 传入 Axis2 引擎的每条音讯都以特定效力和操作为目的。标识此效力/操作组合的过程称为调度,Axis2 引擎提供了进展此任务的四种根本方法: 基于恳求 URI 进展调度 传输信息:可以将 SOAPAc
12、tion Header 用于确定效力和操作WS-Addressing Header:假设传入音讯包含 WS-Addressing Header,也可以将其用于进展调度 假设 SOAP 主体的第一个子项的 QName 是运用 RPC 规那么定义的,那么也可以运用此称号 .可插入模块体系构造模块为效力器提供了一个扩展机制Axis2 中的每个模块都包含一组相关的处置程序.可插入模块体系构造续模块的类型Sandesha2 模块:提供 WS-Reliable Messaging 支持 WS-Addressing 模块:为 Axis2 提供 WS-Addressing 支持 Rampart 和 Rahas
13、 模块:提供 WS-SX平安相关规范支持 Kandula 模块:提供 WS-AT 支持 Savan 模块:提供 WS-Eventing 支持 .可插入模块体系构造续模块的级别系统级别:模块将影响整个系统,此模块中的处置程序将运用于传入系统的一切消 效力级别:此模块中的处置程序将运用于以特定效力为目的的音讯。这些处置程序应该一直部署在调度阶段后操作级别:此模块中的处置程序将运用于以特定操作为目的的音讯。这些处置程序应该一直部署在调度阶段后.改良的部署模型Axis2 如今支持将效力热部署到 Axis2 引擎中热部署效力应该存档为 ZIP 文件,且在文件名中运用 .aarAxis2 存档,Axis2
14、 archive作为扩展名 效力存档包含以下信息: 效力实现类 Services.xml 文件描画其运用的音讯接纳者、所需的任何模块和可用的操作 可选依赖库打包在 lib 文件夹内 .其他特性新客户机 API 可插入数据绑定 REST 支持 REpresentational State Transfer,REST WSDL 2.0 支持:Axis2 如今支持 WSDL 2.0。我们在最近进展的互操作性研讨会中胜利地进展了初始互操作性测试。 工具支持:Axis2 随附了 WSDL2Java 和 Java2WSDL 工具,同时提供了与 Axis2 协同任务的 Eclipse 插件各种传输协议支持:
15、 Axis2 支持 、SMTP、TCP 和 JMSSpring 支持:Axis2 内置了 Spring 效力支持。您可以编写 Spring Bean,然后方便地运用 Axis2 将其作为 Web 效力公开WS-Policy 集成:Axis2 完全支持 WS-Policy,该规范已集成到了引擎的中心中.第四节 基于AXIS的Web效力开发.Publishing and Consuming Web Services with AxisTomcatAXIS*.jws?wsdlClient SideJava Class*.jws*.jws?wsdlwsdlJava2WSDLwsdlAXISJava C
16、lass*.javawsdlWSDL2Java.Invoking a SOAP Service with AxisTomcatAXISSOAP RequestSOAP RequestSOAP ReplyXercesSOAP ReplyAXISXercesClient Side Web ServiceReplyRPCInvokeReplyServer Side Web Service.Axis效力器端部署的三种方式Java源程序直接发布*.jws经过编写wsdd文件部署。经过生成的Skelton类在效力器上部署.Axis客户端调用Web效力的三种方式动态调用接口模型动态代理模型静态存根模型.动态
17、调用接口模型利用RPC中的Call类对象来实现对远程效力的调用和访问的一种模型,其中心在于Call对象的实现。对每个Web效力的每一个远程方法调用,DII模型都要生成一个新的Call对象,并可以根据该效力的WSDL文档描画对Call对象进展配置,最终利用Call对象实现该远程方法的调用。 .动态代理模型利用java反射reflection机制中Proxy类对象来实现对远程效力的调用和访问的一种模型,其中心在于与Proxy对象相关联的InvocationHandler的实现。对于每个不同的Web效力,客户端运用程序都需求在运转时访问效力的WSDL文档,生成一个效力的本地对象Service,然后由该对象根据WSDL文档相应描画PortName获得接口的对应动态代理对象,利用生成的动态代理对象来访问远程接口的一切操作;.动态代理模型动态代理的类构造 .静态存根模型利用Stub类对象来实现对远程效力的调用和访问的一种模型,其中心在于Stub对象的实现。要实现远程效力的访问,客户端必需获得存根stub,生成存根的一个实例对象,对该对象进展必要的配置及类型转换,最后利用配置好的静态存根对象实例调用远程操作获得Web效力结果;.静态存根模型静态存根的类构造 .静态存根模型创建存根对象:客户端运用程序可以直接创建静态存根实现类的实例对象;或者经过Service.ge
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026菏泽病患陪护面试题及答案
- 教育学原理练习题库与答案
- 数据仓库设计与实现实战指南
- 2026江阴大学面试题及答案
- 深度复盘智能卧室照明年度发展:融资轮次、产能扩张与头部玩家
- 双重预防机制基本知识
- 排球考试题目及答案
- 8万吨年2#乙二醇装置空分装置土建工程质量计划
- 智能定时器2.0时代:从机械控制到IoT生态跃迁
- 量子计算赋能:智能健身车大数据处理效率的指数级跃迁
- 《数据库系统概论》全套课件(南京农业大学)
- CQI-23模塑系统评估审核表-中英文
- 2024年全国寄生虫病防治技能竞赛备赛试题库-下(包虫病、其它寄生虫病)
- AQ 2031-2011 金属非金属地下矿山监测监控系统建设规范 (正式版)
- 上海初中化学知识点全面总结
- FZT 13007-2016 色织棉布行业标准
- 脑梗死合并脑出血的护理
- 桥梁典型病害课件
- 23J916-1:住宅排气道(一)
- 国有企业供电单位经济活动分析模板
- 脑血管解剖医学课件
评论
0/150
提交评论