CN102404391A - 一种面向接口的web服务调用方法 - Google Patents
一种面向接口的web服务调用方法 Download PDFInfo
- Publication number
- CN102404391A CN102404391A CN2011103541439A CN201110354143A CN102404391A CN 102404391 A CN102404391 A CN 102404391A CN 2011103541439 A CN2011103541439 A CN 2011103541439A CN 201110354143 A CN201110354143 A CN 201110354143A CN 102404391 A CN102404391 A CN 102404391A
- Authority
- CN
- China
- Prior art keywords
- interface
- web service
- web
- soap
- agent object
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 33
- 239000000344 soap Substances 0.000 claims abstract description 15
- 238000012545 processing Methods 0.000 claims abstract description 13
- 239000003795 chemical substances by application Substances 0.000 claims description 24
- 238000005516 engineering process Methods 0.000 claims description 7
- 238000012856 packing Methods 0.000 claims description 7
- 238000006243 chemical reaction Methods 0.000 claims description 3
- 238000003032 molecular docking Methods 0.000 claims description 3
- 238000011161 development Methods 0.000 description 6
- 230000003993 interaction Effects 0.000 description 3
- 238000010276 construction Methods 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000007596 consolidation process Methods 0.000 description 1
- 230000007812 deficiency Effects 0.000 description 1
- 238000004880 explosion Methods 0.000 description 1
Landscapes
- Stored Programmes (AREA)
Abstract
本发明公开了一种面向接口的WEB服务调用方法,属于计算机技术领域。该方法根据配置信息自动构建代理对象;代理对象实现指定的接口,对接口中规定的每个方法,代理对象都将对方法的调用请求转发到另外一个处理单元;在所述处理单元中,自动构建soap消息并发送给web服务;处理单元获取web服务的响应soap,解析为接口方法规定的返回值;在将soap消息发送给web服务之前,将动态地址切换为真实的服务地址。使用此方法,客户端可以通过本地代理对象来间接操作远端web服务。通过简单的配置,自动将远端服务映射为本地代理对象,本地代理对象基于接口创建。用户可以节省下编写访问web服务代码的时间,可以很容易进行软件开发期和上线运行期之间的切换。
Description
技术领域
本发明涉及计算机技术领域,具体地说是一种面向接口的WEB服务调用方法。
背景技术
2000年以后,人们普遍认识到基于公共——专有互联网之上的电子商务具有极大的发展潜力,因此需要创建一套全新的基于互联网的开放通信框架,以满足企业对电子商务中各分立***之间通信的要求。于是,人们提出了web服务的概念,希望通过将企业对外服务封装为基于统一标准的web服务,实现异构***之间的简单交互。
从2005年开始,仅仅是几个web服务之间的简单调用已经难以满足企业的需要,随着企业对资源整合的迫切需要以及网络带宽的逐渐增长,soa已经成为企业构建应用的基础与核心。这样,web服务的数量就出现了一个爆发式的增长,同时,复杂度也在不断提高。
随着web服务的数量与复杂度不断提供,传统开发方式的弊端也逐步显现出来。
从web服务技术诞生发展至今,各种各样的web服务技术都比较侧重服务端,着眼于如何减少web服务发布的配置量、代码量,对作为使用web服务的客户端一方一般都不甚重视。在交互量很少时,客户端手动构建交互内容还不算很大的负担,而在交互内容越来越庞杂的现在和未来,这种方式已经严重影响了***的正确性与稳定性,服务调用相关的代码已经成为开发时的bug重灾区。
发明内容
本发明的技术任务是针对上述现有技术的不足,提供一种面向接口的WEB服务调用方法。
本发明的技术任务是按以下方式实现的:一种面向接口的WEB服务调用方法,其特点是,
根据配置信息自动构建一个代理对象,所述配置信息包括web服务地址、包装接口以及web服务描述文件这三个web服务调用需要的信息;
代理对象实现指定的接口,对接口中规定的每个方法,代理对象都将对方法的调用请求转发到另外一个处理单元;
在所述处理单元中,自动构建soap消息并发送给web服务;而后,这个处理单元获取web服务的响应soap,解析为接口方法规定的返回值;
在将soap消息发送给web服务提供方之前,在客户端进行地址的转换,由客户端将动态地址切换为真实的服务地址。
进一步的,
以java的动态代理技术创建代理对象,只实现指定的包装接口,除此之外,并无多余的类型信息,使得客户端只能将代理对象按照声明的接口使用,以强制客户端按照面向接口的原则进行开发。
除了自动构建代理对象外,允许客户端通过暴露的api手动创建代理对象。构建细节由客户端自己掌握。
本发明的面向接口的WEB服务调用方法与现有技术相比具有以下突出的有益效果:
(一)使用此方法可以降低web服务调用的开发难度,屏蔽web服务调用过程中的soap消息组装、发送、解析等技术细节,提升开发效率;
(二)可以实现web服务的动态切换,这样可以实现开发期与上线运行期的无缝切换,甚至,可以进行web服务的集群,客户端根据web服务所在集群的域名进行web服务的动态调用。
附图说明
附图1是本发明实施例中一个典型的基于本发明的web服务调用处理过程的流程图。
具体实施方式
参照说明书附图以具体实施例对本发明的面向接口的WEB服务调用方法作以下详细地说明。
实施例:
本发明的面向接口的WEB服务调用方法包括以下内容:
根据配置信息自动构建一个代理对象,所述配置信息包括web服务地址、包装接口以及web服务描述文件这三个web服务调用需要的信息;
代理对象实现指定的接口,对接口中规定的每个方法,代理对象都将对方法的调用请求转发到另外一个处理单元;
在所述处理单元中,自动构建soap消息并发送给web服务;然后,这个处理单元获取web服务的响应soap,解析为接口方法规定的返回值;
在将soap消息发送给web服务提供方之前,在客户端进行地址的转换,由客户端将动态地址切换为真实的服务地址。
以java的动态代理技术创建代理对象,只实现指定的包装接口,使得客户端只能将代理对象按照声明的接口使用,以强制客户端按照面向接口的原则进行开发。
允许客户端通过暴露的api手动创建代理对象。
如附图1所示,本发明的面向接口的WEB服务调用方法的具体实现过程如下:
1、web服务调用方设置调用web服务的配置文件,配置文件内容包括web服务地址、包装的本地接口及web服务描述文件。
2、本地调用方请求调用web服务,其实现是调用本地接口中的对应方法,本地程序会根据1所述的配置文件生成代理对象,由代理对象负责调用具体的web服务。
3、web服务提供方根据代理对象的调用返回对应类型的数值,该数值返回值反馈给代理对象。
4、代理对象将返回值给对应接口,由接口将该返回值反馈给web服务调用方,完成web服务的调用。
Claims (3)
1.一种面向接口的WEB服务调用方法,其特征在于,该方法包括以下内容:
根据配置信息自动构建一个代理对象,所述配置信息包括web服务地址、包装接口以及web服务描述文件这三个web服务调用需要的信息;
代理对象实现指定的接口,对接口中规定的每个方法,代理对象都将对方法的调用请求转发到另外一个处理单元;
在所述处理单元中,自动构建soap消息并发送给web服务;然后,这个处理单元获取web服务的响应soap,解析为接口方法规定的返回值;
在将soap消息发送给web服务提供方之前,在客户端进行地址的转换,由客户端将动态地址切换为真实的服务地址。
2.根据权利要求1所述的面向接口的WEB服务调用方法,其特征在于,以java的动态代理技术创建代理对象,只实现指定的包装接口,使得客户端只能将代理对象按照声明的接口使用,以强制客户端按照面向接口的原则进行开发。
3.根据权利要求1所述的面向接口的WEB服务调用方法,其特征在于,允许客户端通过暴露的api手动创建代理对象。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2011103541439A CN102404391A (zh) | 2011-11-10 | 2011-11-10 | 一种面向接口的web服务调用方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2011103541439A CN102404391A (zh) | 2011-11-10 | 2011-11-10 | 一种面向接口的web服务调用方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN102404391A true CN102404391A (zh) | 2012-04-04 |
Family
ID=45886171
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2011103541439A Pending CN102404391A (zh) | 2011-11-10 | 2011-11-10 | 一种面向接口的web服务调用方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102404391A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103581310A (zh) * | 2013-10-24 | 2014-02-12 | 深圳市远行科技有限公司 | 一种web服务代理的自动生成方法 |
CN107678864A (zh) * | 2017-01-13 | 2018-02-09 | 北京资配易投资顾问有限公司 | 接口的调用方法及*** |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20060265720A1 (en) * | 2005-05-22 | 2006-11-23 | International Business Machines Corporation | Method, system, and web service broker for dynamic web service invocation |
CN101534324A (zh) * | 2009-04-14 | 2009-09-16 | 河北全通通信有限公司 | 基于DotNet平台的可插拔的Web服务动态调用方法 |
CN101695076A (zh) * | 2009-09-21 | 2010-04-14 | 中兴通讯股份有限公司 | 基于Web服务的统一代理适配方法、装置以及适配*** |
-
2011
- 2011-11-10 CN CN2011103541439A patent/CN102404391A/zh active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20060265720A1 (en) * | 2005-05-22 | 2006-11-23 | International Business Machines Corporation | Method, system, and web service broker for dynamic web service invocation |
CN101534324A (zh) * | 2009-04-14 | 2009-09-16 | 河北全通通信有限公司 | 基于DotNet平台的可插拔的Web服务动态调用方法 |
CN101695076A (zh) * | 2009-09-21 | 2010-04-14 | 中兴通讯股份有限公司 | 基于Web服务的统一代理适配方法、装置以及适配*** |
Non-Patent Citations (2)
Title |
---|
SOMETHING NEVER GO AWAY: "JAVA中的动态代理机制实现AOP", 《BLOG.SINA.COM.CN/S/BLOG_6B17D1B20100MRTE.HTML》, 31 October 2010 (2010-10-31), pages 1 - 4 * |
贝高林的BLOG: "Web服务搜索与执行引擎(九)——初看客户端如何调用Web服务", 《BLOG.CSDN.NET/LIN_BEI/ARTICLE/DETAILS/1578059》, 24 April 2007 (2007-04-24), pages 1 - 3 * |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103581310A (zh) * | 2013-10-24 | 2014-02-12 | 深圳市远行科技有限公司 | 一种web服务代理的自动生成方法 |
CN103581310B (zh) * | 2013-10-24 | 2017-04-05 | 深圳市远行科技股份有限公司 | 一种web服务代理的自动生成方法 |
CN107678864A (zh) * | 2017-01-13 | 2018-02-09 | 北京资配易投资顾问有限公司 | 接口的调用方法及*** |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109246251B (zh) | 一种微服务调用方法、装置、***、设备及可读存储介质 | |
CN101202665B (zh) | 图形用户界面的生成方法 | |
CN102209111B (zh) | 云计算移动网络终端设备开放性跨平台*** | |
CN100426750C (zh) | 一种生成两套网管***的方法 | |
CN102521027B (zh) | 虚拟桌面***中的窗口界面传输方法 | |
CN102257789A (zh) | 用于改善交互路由性能的***和方法 | |
CN102810069A (zh) | 一种java对象的请求和响应方法、装置、***和终端 | |
CN103338267B (zh) | 一种SIP和Web服务融合的移动智能社区增值业务平台 | |
CN104301401A (zh) | 一种基于快速服务封装的移动应用平台 | |
CN105183452A (zh) | 一种用于配电设备监测基于Spring AOP的远程规约服务中间件 | |
CN103268230A (zh) | 用于构建可拓展服务的云计算信息管理平台的方法 | |
CN101155174B (zh) | 基于共用协议的远程用户界面服务实现方法 | |
CN103685485B (zh) | 移动终端VoIP通讯音频管理*** | |
US7392060B2 (en) | Mobile exchange infrastructure | |
Shulin et al. | Research and implementation of Web Services in Android network communication framework Volley | |
CN102984272B (zh) | 一种远程控制移动终端通信能力的***及其方法 | |
CN102404391A (zh) | 一种面向接口的web服务调用方法 | |
CN103561113B (zh) | Web Service接口的生成方法及装置 | |
US8676902B2 (en) | System and method for service oriented email client application | |
KR101319815B1 (ko) | 멀티 단말 장치 간 서버-클라이언트 서비스 환경을 지원하는 앱 구동 방법 | |
CN103677842A (zh) | 软件工具配置式集成扩展调用方法与*** | |
CN202143098U (zh) | 一种基于云计算的智能手机开放性跨平台*** | |
CN107196800B (zh) | 一种基于配置的超时分层控制方法 | |
CN102148869A (zh) | Java应用程序向本地传递信息的方法及设备 | |
Sefid‐Dashti et al. | A reference architecture for mobile SOA |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C02 | Deemed withdrawal of patent application after publication (patent law 2001) | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20120404 |