简化Web服务客户端构造的服务交互装置及交互方法

文档序号:7598351阅读:139来源:国知局
专利名称:简化Web服务客户端构造的服务交互装置及交互方法
技术领域
本发明涉及计算机网络技术领域,特别是一种简化Web服务客户端构造的服务交互装置及交互方法。
背景技术
Web服务是基于国际开放标准的、松散耦合的网络应用系统构件,可以用来封装用户所需的硬件、软件和数据资源。用它构造的分布式企业信息系统能更好地适应企业业务变化。当业务变化引起系统整合时,调整这种信息系统所用的人力、时间和资金要比其它类型的系统低许多。因此,Web服务在企业信息系统构造等方面有广阔的应用前景。
Web服务部署在服务器上,用户通过客户端来调用。目前,尽管有关Web服务的国际标准已经不少,但并没有很好地解决低代价、方便地构造Web服务客户端的问题。针对上述情况,本发明所述的服务交互装置及交互方法解决了以下问题(1)现有调用Web服务的技术,如SOAP(Simple Object Access Protocol简单对象访问协议)、WSIF(Web Services Invocation Framework Web服务调用框架),只提供了最基本的Web服务调用协议、方法,层次低,构造出来的客户端结构不清晰,不易维护。
(2)现有技术的使用方法复杂,代价高。Web服务客户端必须处理低级的SOAP对象,或者使用复杂的远程调用接口。对Web服务客户端构造者而言,不仅技术要求高,而且工作繁琐、复杂,时间、人力、资金成本大。

发明内容
本发明的目的在于提供一种简化Web服务客户端构造的服务交互装置及交互方法。
本发明是在网络环境下支持Web服务客户端构造的服务交互装置和利用该装置进行交互的方法,特别涉及一种网络环境下简化Web服务客户端构造的服务交互装置和交互方法,利用该装置不仅简化了Web服务客户端及交互过程,而且使构造方法更加简便、易用,代价更低。
本发明的目的是解决前面提到的现有Web服务客户端构造与交互中存在的两类问题,给出一个支持用户低代价构造Web服务客户端的服务交互装置和利用该装置构建客户端,使用Web服务的便捷方法。利用这个装置和方法,用户可不必了解繁琐、复杂的服务使用细节,就可以用通常的JSP(Java Server Pages)技术,高效、低代价地构造Web服务客户端,建造基于Web服务的分布式信息系统。
为了达到上述目的,本发明解决了如下技术难题如何向用户提供一个简洁的Web服务交互机制;如何使所提供的新Web服务交互机制支持现在常用的JSP技术,降低使用的难度、代价,减少以往技术投资的浪费。
为解决上述问题,本发明采用如下技术方案本发明以服务交互装置作为基于Web服务的分布式信息系统中Web服务客户端与服务器端数据、指令传递的控制设施,支持Web服务客户端的构造,构造代价低,Web服务客户端与服务器端的交互方法简单。
一种网络环境下Web服务客户端与服务器端交互的便捷方法,以服务交互装置作为Web服务客户端与服务器端交换数据的控制设施,只须利用数据输入部件、数据输出部件提供的接口即可构造Web服务的客户端,该客户端可以通过数据输入部件向Web服务服务器端发送使用服务所需的参数,并通过数据输出部件获取Web服务的处理结果。
其交互过程有以下特征Web服务客户端只须使用数据输入部件、数据输出部件提供的接口,输入数据、返回结果的传输、暂时存储及服务的执行由服务交互装置自动处理。
构建的Web服务客户端有以下特征提交的输入表单中包含输入结束标志和界面地址标志,输入结束标志值为1,表示从Web服务客户端的数据输入结束,此时界面地址标志的值为输出界面的地址,输入结束标志值为0,表示从Web服务客户端的数据输入尚未结束,此时界面地址标志的值为输入界面的地址。
一种简化Web服务客户端构造的服务交互装置包括数据输入部件、数据输出部件、数据存储部件和服务调用部件4部分。其中数据存储部件分别与数据输入部件、数据输出部件、服务调用部件3部分相联,负责接收数据输入部件发来的数据,解包,存储。此外,数据存储部件还负责接收、存储服务调用部件返回的服务处理结果。数据输入部件与数据存储部件、服务调用部件相联,用于接收由Web服务客户端向服务器端发送的数据,按照规定的格式将数据整理、打包后发送至数据存储部件,并通知服务调用部件接收数据。数据输出部件与数据存储部件相联,负责从数据存储部件中取出数据,并按照规定格式返回给Web服务客户端。服务调用部件与数据存储部件、数据输入部件相联,它从数据存储部件中取Web服务客户端的输入数据,触发服务的执行,将处理结果存入数据存储部件,并通知数据输入部件对Web服务客户端输入数据的处理完毕。服务交互装置各部分之间的关系及整体结构视图如图1所示。
数据输入部件提供服务交互装置的稳定输入接口,可以输入的数据包括(1)Web服务的输入参数值以名称、值对的形式传送。
(2)输入结束标志取值为1或0,标记是否已经完成了输入过程。
如果结束输入标志为1,表明由Web服务客户端的数据输入已结束,服务调用部件可以触发Web服务的执行;如果输入结束标志为0,表明Web服务客户端的输入尚未结束。
(3)界面地址标志标记下一个交互界面的地址。当输入结束标志为1时,界面地址标志值为输出界面的地址;当输入结束标志为0时,界面地址标志值为输入界面的地址。
数据输出部件提供服务交互装置的稳定输出接口,包括(1)根据数据项的名字获取数据值的机制;(2)获取所有数据项名字的机制;(3)获取包括所有数据项名字、数据值的一个集合的机制。
在网络环境下,要利用服务交互装置构造Web服务客户端,首先要在一台服务器上安装该服务交互装置。然后,Web服务客户端的构建者可以采用JSP技术,象构造通常的Web应用一样构建Web服务客户端。只不构建时,要用服务交互装置的数据输入部件向Web服务发送数据,用数据输出部件获取Web服务返回的处理结果。数据由Web服务客户端向服务器端发送的过程、Web服务被触发执行的过程、Web服务向客户端返回处理结果的过程由服务交互装置自动处理,不需要Web服务客户端的构建者了解。在数据的呈现方式方面,服务交互装置对Web服务客户端没有限制,Web服务客户端的构建者可以采用JSP技术构造满足用户个性化需要的呈现界面。通过使用服务交互装置中的数据输入部件和数据输出部件提供的接口,Web服务客户端的交互模式不仅仅局限于一次输入加一次输出的简单交互模式,而且可以支持多次输入输出,可以适应不同的交互需求,提供多样化的交互方式。
本发明有如下特点和有益效果(1)本发明提出的服务交互装置解决了使用现有技术(如SOAP、WSIF)构造Web服务客户端所遇到的技术要求高、客户端结构不清晰、交互复杂等问题,降低了构造Web服务客户端的技术难度,简化了构造过程。
(2)本发明所提出的服务交互装置及交互方法,将Web服务客户端构建者从繁琐、低级的工作中解放出来,使之可以采用常用、流行的JSP技术,便捷、高效、低成本地构建用户友好的Web服务客户端,构建基于Web服务的分布式应用系统。
(3)本发明所提出的服务交互装置,实现了Web服务客户端与服务器端数据、指令的自动传送,简化了Web服务客户端与服务器端交互的复杂性。


图1为本发明提出的服务交互装置的结构图;图2为利用本发明提出的服务交互装置实现Web服务客户端与服务器端交互的流程图;图3为在本发明的实施实例1中把本发明的服务交互装置用于Web服务交互的示意图。
图4为在本发明的实施实例2中把本发明的服务交互装置用于Web服务交互的示意图。
具体实施例方式
在图1中,服务交互装置11包括数据输入部件12、数据输出部件13、数据存储部件14、服务调用部件15四部分组成。
数据输入部件12与数据存储部件14、服务调用部件15相联,构成一个负责接收、传送Web服务客户端向服务器端发送的数据的机构,一方面向数据存储部件14中存放输入数据,另一方面通知服务调用部件15可以从数据存储部件14中取输入数据。数据输出部件13与数据存储部件14相联,构成一个负责向Web服务客户端返回服务器端产生的处理结果的机构。服务调用部件15与数据输入部件12、数据存储部件14相联,以获取Web服务客户端发送来的数据调用Web服务,将服务产生的结果送至数据存储部件,并通知数据输入部件12对Web服务客户端输入的处理已经完毕。数据存储部件14与数据输入部件12、数据输出部件13、服务调用部件15相联,负责Web服务客户端与服务器端交互过程中数据的存储。
数据输入部件12与数据存储部件14、服务调用部件15相联,向Web服务客户端提供交互装置11的稳定输入接口,此接口支持Java Servlet标准。利用该接口可以向数据存储部件存放输入数据和通知服务调用部件从数据存储部件中取输入数据,可以由该接口输入的数据包括以名称-值对形式输入的Web服务输入参数名称及其数值、输入结束标志的值和界面地址标志的值。
构建Web服务客户端时只需使用此接口向服务交互装置11传送数据即可,数据的打包、传递将由数据输入部件12完成。Web服务客户端构建者不需要了解具体细节。
数据输出部件13与数据存储部件14相联,向Web服务客户端提供服务交互装置11的稳定输出接口,此接口支持Java构件标准。可以以下3种方式向Web服务客户端提供返回数据根据返回数据的名字获取数据值、提供所有返回数据项的名字、提供包含所有数据项名字、数据值的一个集合。
构建Web服务客户端时,构建者只需通过数据输出部件13提供的输出接口,利用它提供的三种数据获取方式,从服务交互装置11获得返回数据即可,数据的解包、传递将由数据输出部件13完成。Web服务客户端构建者不需要了解具体细节。此外,构建客户端时,必须在需要提交的输入表单中设置输入结束标志和界面地址标志。当输入结束标志为0时,界面地址标志值为输入界面的地址,当输入标志为1时,界面地址标志值为输出界面的地址。
数据存储部件14与数据输入部件12、数据输出部件13、服务调用部件15相联,它以包的形式接收、发送Web服务客户端与服务器端交互过程中的数据,并负责暂时的数据存储。数据存储、交换方式简单,Web服务客户端构建者不需要了解其中的具体细节。
服务调用部件15与数据输入部件12、数据存储部件14相联,可以接受客户端的服务调用请求,从数据存储部件14获取Web服务客户端输入的数据,触发Web服务的执行,将返回结果放入存储部件14,并通知数据输入部件12对Web服务客户端输入的处理已经完毕。服务的触发执行、返回结果的存放由服务调用部件15自动处理,Web服务客户端构建者不需要了解、干预。
数据输入部件12、数据输出部件13、数据存储部件14、服务调用部件15四部分构成服务交互装置11。对Web服务客户端而言,它可以使用的只是数据输入部件12、数据输出部件13所提供的简单的输入/输出接口,数据的传送、处理,服务的调用执行等繁琐的细节完全由服务交互装置自动处理。对Web服务客户端的构建者而言,构建方法、交互过程简单、代价小。
图2说明了利用本发明提出的服务交互装置实现服务交互的工作流程。其主要步骤为S1在网络环境下的一台服务器上安装服务交互装置11,并初始化它;S2构建Web服务,利用服务交互装置11的数据输入部件12、数据输出部件13提供的接口构造Web服务的客户端,并将Web服务及其客户端部署到服务器上;S3启动Web服务的客户端;S4由Web服务客户端录入调用服务所需的参数,并提交,数据输入部件12接受参数数据,检查其正确,如果不正确将返回步骤S4,否则转到S5;S5数据输入部件12向数据存储部件14存放来自Web服务客户端的输入数据;S6数据输入部件12通知服务调用部件15可以从数据存储部件14中取输入数据,并调用服务;S7服务调用部件15从数据存储部件14中取数据,触发服务的执行,将服务执行结果存入数据存储部件14,并通知数据输入部件12对输入数据的处理已经完成;S8数据输出部件13从数据存储部件14中取Web服务的处理结果,将其传送至Web服务客户端呈现。
下面参照附图3具体描述本发明的优选实施实例1。
图3展示了将本发明提出的服务交互装置用于公众信息服务系统中的一个实例,公众信息服务系统包含了天气查询服务等Web服务及利用服务交互装置11构造的Web服务客户端,向用户提供天气查询、交通查询等服务。
一般用户通过一台普通的电脑22访问该公众信息服务系统,希望获得感兴趣的天气状况等信息。服务器21上安装了服务交互装置11,部署了天气查询等Web服务。
在安装了服务交互装置11,部署了相关Web服务之后,用户就可以通过服务交互装置11实现与Web服务的交互了。例如,当用户在电脑22上向服务交互装置发送天气查询服务请求时,天气查询Web服务的客户端被启动,根据该服务客户端的界面地址标志中记录的输入界面地址,输入界面显示出来,用户在该界面中录入查询天气时所需的日期、地区等参数。用户录入数据,并提交后,输入数据经由数据输入部件12存入数据存储部件14,并通知服务调用部件15从数据存储部件14中取输入数据。服务调用部件15从数据存储部件14中取出输入数据后,触发天气查询Web服务。服务被执行,服务调用部件15将返回的天气状况存入数据存储部件14,通知数据输入部件12天气查询已完成。天气查询Web服务客户端界面地址标志中记录的输出界面被呈现,查询结果在电脑22上由该界面显示给查询天气的用户。
下面参照附图4具体描述本发明的优选实施实例2。
图4展示了将本发明提出的服务交互装置用于基于位置的移动服务系统中的一个实例,该系统包含了餐馆查询服务等Web服务及利用服务交互装置11构造的Web服务客户端,向用户提供餐馆查询等服务。
一般用户通过一台可随身携带的手持PDA(个人数字助理)32访问基于位置的移动服务系统,希望获得感兴趣的餐馆信息。服务器3 1上安装了服务交互装置11,部署了餐馆查询等Web服务。
在安装了服务交互装置11,部署了相关Web服务之后,用户就可以通过服务交互装置11实现与Web服务的交互,使用该服务了。例如,当用户通过PDA32向服务交互装置发送餐馆查询服务请求时,餐馆查询Web服务的客户端被启动,根据该服务客户端的界面地址标志中记录的输入界面地址,第一个输入界面显示出来,界面以矢量地图的形式呈现,以便用户定位查询地点。用户点击地图选中查询地点,并提交后,输入数据经由数据输入部件12存入数据存储部件14。由于第一个输入界面中的结束输入标记为0,界面地址标志中存放的第二个输入界面被呈现,用于供用户选择餐馆的类型。用户输入数据并提交,此时结束输入标记为1,表示输入过程已完成,数据输入部件储存数据后,通知服务调用部件15从数据存储部件14中取输入数据。服务调用部件15从数据存储部件14中取出查询地点、餐馆类型数据后,以此为参数触发餐馆查询Web服务。服务被执行,服务调用部件15将返回的餐馆信息存入数据存储部件14,通知数据输入部件12,餐馆查询已完成。餐馆查询Web服务客户端中记录的输出界面被呈现,由于餐馆信息较多,而PDA屏幕的显示范围有限,输出界面可以为具有分页显示能力的界面,将查询结果在PDA32上分页显示给查询餐馆的用户。
权利要求
1.一种网络环境下Web服务客户端与服务器端交互的便捷方法,其特征在于以所述服务交互装置作为Web服务客户端与服务器端交换数据的控制设施,只须利用该装置的数据输入部件、数据输出部件提供的接口即可构造Web服务的客户端,该客户端可以通过数据输入部件向Web服务服务器端发送使用服务所需的参数,并通过数据输出部件获取Web服务的处理结果。
2.根据权利要求1的网络环境下的Web服务客户端与服务器端交互的便捷方法,其主要步骤如下S1在网络环境下的一台服务器上安装服务交互装置(11),并初始化它;S2构建Web服务,利用服务交互装置(11)的数据输入部件(12)、数据输出部件(13)提供的接口构造Web服务客户端,并将Web服务及其客户端部署到服务器上;S3启动Web服务的客户端;S4由Web服务客户端录入使用服务所需的参数,并提交,数据输入部件(12)接受参数数据,检查其正确,如果不正确将返回步骤S4,否则转到S5;S5数据输入部件(12)向数据存储部件(14)中存放来自Web服务客户端的输入数据;S6数据输入部件(12)通知服务调用部件(15)可以从数据存储部件(14)取输入数据,并调用服务;S7服务调用部件(15)从数据存储部件(14)中取数据,触发服务的执行,将服务执行结果存入数据存储部件(14),并通知数据输入部件(12)对输入数据的处理已经完成;S8数据输出部件(13)从数据存储部件(14)中取Web服务的处理结果,将其传送至Web服务客户端呈现。
3.根据权利要求1的网络环境下的Web服务客户端与服务器端交互的便捷方法,其交互过程有以下特征Web服务客户端只须使用数据输入部件、数据输出部件提供的接口,输入数据和返回结果的传输、暂时存储及服务的执行由服务交互装置自动处理。
4.根据权利要求1的网络环境下的Web服务客户端与服务器端交互的便捷方法,构建的Web服务客户端有以下特征提交的输入表单中包含输入结束标志和界面地址标志,输入结束标志值为1,表示从Web服务客户端的数据输入结束,此时界面地址标志的值为输出界面的地址,输入结束标志值为0,表示从Web服务客户端的数据输入尚未结束,此时界面地址标志的值为输入界面的地址。
5.一种简化Web服务客户端构造的服务交互装置,其特征是由数据输入部件、数据输出部件、数据存储部件、服务调用部件几部分组成。
6.根据权利要求5的服务交互装置,其特征是数据输入部件,与数据存储部件、服务调用部件相联,构成一个负责接收、传送Web服务客户端向服务器端发送数据的机构,形成服务交互装置的稳定输入接口,此接口支持Java Servlet标准,支持向数据存储部件存放输入数据和通知服务调用部件从数据存储部件中取输入数据,可以由该接口输入的数据包括以名称-值对形式输入的Web服务输入参数名称及其数值、输入结束标志的值和界面地址标志的值。
7.根据权利要求5的服务交互装置,其特征是数据输出部件,与数据存储部件相联,构成一个向Web服务客户端返回服务器端处理结果的机制,形成服务交互装置的稳定输出接口,此接口支持Java构件标准,向Web服务客户端提供3种获取返回数据的途径,包括根据数据项的名字获取数据值、获取所有数据项名字、获取包含所有数据项名字及数据值的一个集合。
8.根据权利要求5的服务交互装置,其特征是数据存储部件,与数据输入部件、数据输出部件、服务调用部件相联,包括以包的形式接收、发送数据的机构和暂时存储数据的机构。
9.根据权利要求5的服务交互装置,其特征是服务调用部件,与数据输入部件、数据存储部件相联,包括从数据存储部件获取由Web服务客户端输入数据的机构、触发Web服务执行的机构、将服务处理结果放入存储部件的机构、通知数据输入部件对Web服务客户端输入的处理已结束的机构。
全文摘要
本发明涉及计算机网络技术领域的一种简化Web服务客户端构造的服务交互装置及交互方法。此服务交互装置作为在Web服务客户端与服务器端负责交换数据的控制设施,包括数据输入部件、数据输出部件、数据存储部件和服务调用部件4部分。其中,数据输入部件和数据输出部件构成此装置的稳定输入输出接口,Web服务客户端构造者只须使用该接口,就可以建造Web服务客户端,完成与Web服务的交互。数据存储部件接收由数据输入部件发来的数据,并存储由服务调用部件返回的服务执行结果。服务调用部件从数据存储部件中取Web服务客户端的输入,触发服务的执行,并将结果存入数据存储部件,该结果由数据输出部件返回给Web服务客户端。
文档编号H04L29/12GK1588947SQ20041008362
公开日2005年3月2日 申请日期2004年10月13日 优先权日2004年10月13日
发明者李刚, 王菁, 韩燕波 申请人:中国科学院计算技术研究所
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1