Java网络编程精解讲义17.ppt
《Java网络编程精解讲义17.ppt》由会员分享,可在线阅读,更多相关《Java网络编程精解讲义17.ppt(32页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、Java网络编程精解作者:孙卫琴作者:孙卫琴作者:孙卫琴作者:孙卫琴参考书籍:参考书籍:参考书籍:参考书籍:技术支持网址:技术支持网址:技术支持网址:技术支持网址:www.javathinker.orgwww.javathinker.org第17章 Web服务简介参考Java网络编程精解的第17章n17.1 SOAP 简介n17.2 建立Apache AXIS环境n17.3 在Tomcat上发布Apache-AXIS Web应用n17.4 创建SOAP服务n17.5 管理SOAP服务n17.6 创建和运行SOAP客户程序n17.7 发布JWS服务 第17章 Web服务简介nWeb服务确立了一种
2、基于Internet网的分布式软件体系结构。n一个系统向另一个系统公开的服务被统称为Web服务。nWeb服务主要涉及以下两个要素:nSOAP(Simple Object Access Protocol)协议:基于XML 语言的数据交换协议。nWSDL(Web Service Description Language)语言:基于XML语言的Web服务描述语言,与CORBA的IDL语言的作用类似。n本课把Web服务也称为SOAP服务。本课首先介绍了SOAP的基本概念,接着介绍了一个实现了SOAP的Web服务框架:Apache AXIS。17.1 SOAP简介nSOAP(Simple Object
3、Access Protocol),即简单对象访问协议,是在分布式的环境中交换数据的简单协议,它以XML作为数据传送语言。nSOAP采用的通信协议可以是HTTP/HTTPS(现在用得最广泛)协议,也可以是SMTP/POP3协议。17.1 SOAP简介17.1 SOAP简介nSOAP系统有两种工作模式,一种称为RPC(Remote Procedure Call),另一种叫法不统一,在Microsoft的文档中称做Document-Oriented,而在Apache的文档中,称为Message-Oriented。下文将集中讨论RPC。n可以把SOAP RPC简单的理解为这样一个开放协议:SOAP=R
4、PC+HTTP+XML。它有以下特征:n采用HTTP作为通信协议,采用客户/服务模式。nRPC作为统一的远程方法调用途径。n传送的数据使用XML语言,允许服务提供者和客户经过防火墙在Internet上进行通信。17.1 SOAP简介17.1 SOAP简介nSOAP客户和SOAP服务器之间采用符合SOAP规范的XML数据进行通信。例如以下是一个SOAP服务器向SOAP客户发回的响应数据:Hello:weiqin 17.2 建立Apache AXIS环境 n建立Apache AXIS环境需要的文件的清单和下载地址参见表17-1。17.2 建立Apache AXIS环境n把axis-1_1.zip解
5、压到本地硬盘,假定它的根目录为。n在/webapps子目录下有一个axis子目录,它是一个用于发布SOAP服务的Web应用,下文称其为Apache-AXIS Web应用。17.3 在Tomcat上发布Apache-AXIS Web应用n用Tomcat服务器来发布Apache-AXIS Web应用的步骤如下。n(1)把activation.jar,mail.jar和xerces.jar拷贝到/lib目录下。n(2)把/webapps目录下的整个axis子目录拷贝到/webapps目录下。17.3 在Tomcat上发布Apache-AXIS Web应用n启动Tomcat服务器,再通过浏览器访问 h
6、ttp:/localhost:8080/axis,将会看到如图17-3所示的axis的主页。17.4 创建SOAP服务nTomcat充当Apache-AXIS Web应用的容器。nApache-AXIS Web应用又充当SOAP服务的容器。nSOAP客户程序可以通过Apache AXIS API来发出RPC请求,访问SOAP服务。17.4 创建SOAP服务 17.4 创建SOAP服务创建基于RPC的SOAP服务包括两个步骤:n(1)创建提供SOAP服务的Java类。n(2)创建SOAP服务的发布描述符文件。17.4.1 创建提供SOAP服务的Java类n以下是一个简单的SOAP服务类,它包含了
7、一个方法sayHello():package mypack;public class HelloService public String sayHello(String username)return Hello:+username;n编译这个Java类不需要在classpath中引入任何与AXIS相关的JAR文件。编译完毕,应该把HelloService.class文件拷贝到以下目录:/webapps/axis/WEB-INF/classes/mypack17.4.2 创建SOAP服务的发布描述符文件nApache AXIS使用Web服务发布描述符文件WSDD(Web Service De
8、ployment Descriptor)来发布SOAP服务。n以下是HelloService的发布描述文件,名为deploy.wsdd:17.5 管理SOAP服务nApache AXIS工程提供了两种管理SOAP服务的工具,一种是基于Web的,还有一种是基于命令行的。n这两种工具都能提供发布和删除SOAP服务的功能。17.5.1 发布SOAP服务n发布SOAP服务时,只要指定wsdd文件即可,使用方法如下:java org.apache.axis.client.AdminClient deploy.wsddn以上命令将把deploy.wsdd文件中声明的SOAP服务发布到SOAP服务器中。17
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Java 网络 编程 讲义 17
限制150内