[发明专利]服务客户端自动构建系统无效
申请号: | 200810197588.9 | 申请日: | 2008-11-11 |
公开(公告)号: | CN101739249A | 公开(公告)日: | 2010-06-16 |
发明(设计)人: | 王科;欧伟杰;曾承;彭智勇 | 申请(专利权)人: | 武汉大学 |
主分类号: | G06F9/44 | 分类号: | G06F9/44 |
代理公司: | 武汉天力专利事务所 42208 | 代理人: | 严彦;冯卫平 |
地址: | 430072*** | 国省代码: | 湖北;42 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 服务 客户端 自动 构建 系统 | ||
技术领域
本发明属于服务客户端自动构建技术领域,特别是涉及一种服务客户端自动构建系统。
背景技术
当下主流的服务客户端自动构建工具主要包括Apache Axis提供的WSDL2Java命令行工具以及微软的Visual Studio.NET的自带图形化工具。这些工具提供了Web服务调用代码生成系统,但不能为用户提供服务检索功能,用户需要自己阅读服务描述文档(WSDL)查找需要的服务,并使用操作名、参数名、参数类型等信息进行所生成代码的使用。由于WSDL文档结构复杂,不适于人读,这使得服务使用的门槛依然很高,并且使用效率低下。当获得的服务描述文档很多时,这样的方式更有可能成为服务使用效率的瓶颈。
而当前的各类服务发现系统,如搜索引擎与UBR(UDDI BusinessRegistries),服务发现网站(XMethods,StrikeIron,BindingPoint)等。虽然可以提供部分服务的在线测试页面,但是不能生成用于构建基于服务软件的代码,对于服务使用帮助不大。
发明内容
本发明目的在于针对现有技术的不足,提出一种便于查找服务的高效服务客户端自动构建系统。
本发明的技术方案为:包括有以下三个部分,
存储模块,用于持久存储服务信息;
服务发现模块,用于提供服务检索接口,根据服务检索接口接受的查询请求信息检索存储模块中的相应服务信息,展示检索结果并为检索到的相应服务信息建立检索结果索引;
服务调用代码生成模块,用于从服务发现模块接收检索结果索引,按照检索结果索引从存储模块中提取相应服务信息,并填入代码模板生成服务调用代码。
而且,所述存储模块采用中间件存储模式存储服务信息,即将服务信息内容分解为一项以上元素后分项存储。
而且,存储模块中建立服务表、操作表和参数表,将服务信息内容分解为服务元素、操作元素和参数元素后分别存储到服务表、操作表和参数表。
而且,所述存储模块建立WSDL解析机制,用于实现WSDL文档所含服务信息到按中间件存储模式存储的转换,所述转换包括以下步骤,
步骤一,读取WSDL文档的根元素,构建一个Definition对象;
步骤二,使用Definition的子元素Types生成标准的Java对象Schema向量;
步骤三,获得在WSDL文档中定义的所有Service对象,提取每个Service对象的服务元素信息填入服务表;提取每个Service对象的端口集合得到相应绑定信息,从绑定信息中取得每个端口的操作集合和操作的地址信息,作为操作元素信息填入操作表;再对每个操作进行处理,得到每个操作相关的参数信息并填入参数表。
本发明为改进了现有服务客户端自动构建系统,将服务发现功能和服务调用代码生成功能融合为一,提高了服务支持水平。服务客户端自动构建系统具备了服务发现功能,就可以直接为用户检索到的服务产生调用代码。用户不必再对服务描述文档(WSDL)进行人工阅读与查找需要的服务功能,然后记录下服务的各类信息来进行代码的使用。本发明还提出采用中间件存储模式存储服务信息,将所有服务信息内容按元素划分进行存储,进一步提高了服务发现效率。采用中间件存储模式可以进行属性扩展,所以生成的代码可以比直接通过WSDL生成的代码具备更多特征,比如支持多语言等。本发明提出可在存储模块中内建WSDL解析机制,用于自动实现将WSDL文档所含服务信息按中间件存储模式存储,以便根据客户需要从任意WSDL文档中进行高效率的服务发现。
附图说明
图1为本发明实施例的中间件存储模式示意图;
图2为本发明实施例的系统结构示意图;
图3为本发明实施例的生成代码示意图。
具体实施方式
参见附图2,本发明提出的服务客户端自动构建系统包括有以下三个部分,(一)存储模块,用于持久存储服务信息;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于武汉大学,未经武汉大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/200810197588.9/2.html,转载请声明来源钻瓜专利网。