- 8
- 0
- 约2.38千字
- 约 13页
- 2017-10-06 发布于重庆
- 举报
webservice 的发布和三种客户端模式
WebService的三种客户端模式
作者:杜航航
目录
引言 2
1 WebService的发布 2
2 WebService客户端的三种模式 3
2.1开发者拥有Webservice的java接口类 3
2.2动态模式 4
2.3 通过WSDL生成客户端 4
引言
WebService的重要性不言而喻,在实际的开发中是经常要遇到的。如果WebService的服务端和客户端都是一个人或者一个Team开发,那么客户端的开发相对简单,因为完全可以共享web服务的java接口,但是假如客户只给你一个WebService的地址,要你去调用客户公布的WebService地址,那么WebService客户端的编写则相对比较困难,这里总结了三种不同模式和情况下WebService客户端代码的编写。
网上有很多公共的WebService服务,推荐一个网站:/zh_cn/web_services.aspx,提供了20多个常见WebService服务,例如查询手机号码归属地,查询天气预报,在线翻译等功能。
1 WebService的发布
为了说明问题,我这里首先介绍一下如何发布一个WebService。该WebService的功能是加法计算,也就是输入两个整数,输出这两个整数的和。
接口的java类
加法的实现类(也就是实际的WebService服务的提供者)
services.xml
web.xml
以上就是WebService服务器端的所有代码。由于比较简单,这里不做详细解释。准备就绪之后,将WebService工程发布在应用服务下,例如发布在tomcat之下。发布成功之后,可以打开浏览器查看服务内容。在浏览器输入wsdl的地址,例如:http://localhost:8080/TestXfire/services/Add?wsdl
WSDL的内容如下,wsdl详细描述了接口的所有信息,有研究的话可以仔细看下。这里不做详细解释。
以上就是成功发布了一个webservice的服务。
2 WebService客户端的三种模式
2.1开发者拥有Webservice的java接口类
很多情况下,WebService的服务提供端和客户端的开发者是一个人或者一个Team,这种情况下,客户端开发者就拥有Webservice发布的java接口类,这种客户端的开发相对比较简单。
客户端代码如下:
这种模式实例化一个接口的java类,然后就可以通过调用java的接口类来实现远程调用WebService服务。这种模式的前提是客户端开发者必须有接口的java类。
2.2动态模式
这种模式客户端不需要服务端的接口java类,但是调用复杂类型的参数的情况下使用起来比较困难。
客户端代码如下:
这种模式生成一个动态的客户端,通过指定需要调用的java接口的方法和传递参数来实现对接口中具体方法的调用。对于比较复杂的接口或者参数数据类型复杂的服务来说,使用起来相对比较复杂。
2.3 通过WSDL生成客户端
在实际的开发中还会经常遇到一种情况,客户也许只告诉你一个WebService的地址,让你自己来调用WebService服务,并没有给你服务端的接口类,并且接口相对复杂,这种情况下很可能要自己去仔细研究wsdl的详细内容,自己编写接口java类,对于复杂的接口,工作量的很大的,并且容易出错,好的办法是自己借助于工具自动生成接口代码和客户端代码。
我这里使用网上一个公共的WebService服务,查询手机号码归属地。
wsdl的地址是:/WebServices/MobileCodeWS.asmx?wsdl
具体内容如下:的务端Service开浏览器查看服务内容。我里里
(1)打开myeclipse8.6。(我这里使用的myeclipse8.6)
(2)新建一个WebService工程,工程名TestXfireClient,framework选择xfire
(3)默认
(4)选择Xfire core lib和client lib,然后点击Finish
(5)在src下新建一个package,便于代码管理,例如package名称自己根据习惯自己取
(6)新建-Other-webService- web Service Client
(7)选择刚才的Webservice工程,framework选择xfire
(8)填写wsdl的地址,例如这里选择的是/WebServices/MobileCodeWS.asmx?wsdl,java package选择刚才新建的package
(
您可能关注的文档
最近下载
- 2013年黑龙江省高考数学试卷(理科)(全国新课标Ⅱ).docx VIP
- 深度解析(2026)《SYT 5679-2017钻井液用降滤失剂 褐煤树脂 SPNH》.pptx VIP
- 12J201 平屋面建筑构造图集.docx VIP
- 社会调查研究计划书.docx VIP
- 深度解析(2026)《SYT 5092-2017钻井液用降滤失剂 磺化褐煤 SMC》.pptx VIP
- 倍的认识(刘松).ppt VIP
- 2021年黑龙江省龙东地区中考数学真题试卷(含答案解析).docx VIP
- 教学实录-倍的认识刘松.docx VIP
- 华为投资控股有限公司2023年年度报告-华为.pdf VIP
- 石墨电极制造性及使用.ppt VIP
原创力文档

文档评论(0)