- 1
- 0
- 约6.38千字
- 约 41页
- 2019-08-03 发布于江苏
- 举报
Two Approaches Web 服务开发生命周期 开发 开发和测试 Web 服务实现、定义服务接口描述和定义服务实现描述。 通过创建新的 Web 服务、把现有的应用程序变成 Web 服务 由其它 Web 服务和应用程序组成新的 Web 服务提供 Web 服务的实现。 部署 向服务请求者或服务注册中心发布服务接口和服务实现的定义 Web 服务的可执行文件部署到执行环境 运行 调用 Web 服务 Web 服务完全部署、可操作并且服务提供者可以通过网络访问服务 管理 持续的管理和经营 Web 服务应用程序。安全性、可用性、性能、服务质量和业务流程 构建Web Service 1.编写代码 2.打包以便布署 3.布署到应用服务器 4.创建WSDL描述 5. 发布描述 6. 发现-通过UDDI 7. 绑定、调用 访问Web Service 1. 开发新应用 2. 查询UDDI 3. 定位Web服务、下载其描述 4. 根据描述创建Java client proxy 5. 在应用中编写调用Java client proxy methods 代码 6. 测试应用 7. Java client proxy通过SOAP调用Web service methods Web Service Runtime 1. 提交请求(参数)给应用服务器, 服务器调用Java servlet. 2. Servlet调用本地Java proxy方法,proxy调用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查询结果的JSP 9. JSP发送HTML给用户,页面中包含有服务返回的结果 Axis Introduction Axis是Apache组织推出的Web服务引擎 Axis本质上就是一个Web服务引擎,提供创建服务器端、客户端和网关SOAP操作的基本框架。 但Axis还包括: 一个独立的Web Service服务器。 一个嵌入Servlet引擎(Tomcat)的服务器。支持WSDL。提供转化WSDL为Java类的工具。提供例子程序。提供TCP/IP数据包监视工具。 Axis2体系结构 AXIS 对象模型(AXIs Object Model,AXIOM)是 Apache Axis2 的 XML 对象模型 内核层包含引擎、模块和部署框架 所有其他组件都在内核之上的层中 各种传输协议(如 HTTP 和 SMTP)和数据绑定(在 XML 和 Java 代码之间进行转换)并不在核心中,因为它们是可插入的,因此提供了很大的灵活性 所有其他相关技术(如 Java API for XML Web Services (JAX-WS))都在 Axis2 之上的层次中 AXIOM AXIOM是一个 XML 对象模型,设计用于提高 XML 处理期间的内存使用率和性能,基于 Pull 解析 通过使用 Streaming API for XML (StAX) Pull 解析器,AXIOM可以控制解析过程,以提供延迟构建支持 StAX通过提供一种基于事件迭代器(Iterator)的API让程序员去控制xml文档解析过程 程序遍历这个事件迭代器去处理每一个解析事件,解析事件可以看做是程序拉出来的,也就是程序促使解析器产生一个解析事件然后处理该事件,之后又促使解析器产生下一个解析事件,如此循环直到碰到文档结束符 SAX也是基于事件处理xml文档,但却是用推模式解析,解析器解析完整个xml文档后,才产生解析事件,然后推给程序去处理这些事件 DOM采用的方式是将整个xml文档映射到一颗内存树,这样就可以很容易地得到父节点和子结点以及兄弟节点的数据,但如果文档很大,将会严重影响性能 延迟构建是指 AXIOM 不完全构建XML对象模型,而是基于用户的需求构建 AXIOM(续) 例子: 从 XML 输入流中获得第一个人的 Location 元素值 XML文档 AXIOM(续) 优势 尽可能仅使用能满足用户的需求的内存 如果用户希望访问较大的文档中前面的数个字节或数千字节,则延迟构建功能将改善该应用程序的内存需求情况 可以从任何元素获得 StAX 事件,而不管是否完整构建了对象模型 应用案例: 当 Axis2 作为中介传递时,如果需要仅读取 SOAP 消息的 Header,AXIOM 将防止其读取整个 SOAP 消息,使其具
原创力文档

文档评论(0)