一种基于面向服务的架构的服务发布方法及装置制造方法

文档序号:6505839阅读:138来源:国知局
一种基于面向服务的架构的服务发布方法及装置制造方法
【专利摘要】本发明公开了一种基于面向服务的架构的服务发布方法,所述方法包括:确定文档规范,并根据所述文档规范编写文档;确定所编写的文档不符合所述文档规范时,查找出不符合所述文档规范的部分,并根据所述文档规范重新编写不符合所述文档规范的部分,直至所述文档符合所述文档规范;根据所述文档规范与Webservice服务描述语言WSDL文件规范的对应关系,将所述文档转换为WSDL文件;利用开源工具将所述WSDL文件发布为Webservice服务。本发明还公开了一种基于面向服务的架构的服务发布装置。采用本发明,能够避免在编译过程中出现的错漏的情况,从而缩短开发周期。
【专利说明】-种基于面向服务的架构的服务发布方法及装置

【技术领域】
[0001] 本发明涉及基于面向服务的架构(Service Oriented Architecture, S0A)的服务 发布技术,尤其涉及一种基于面向服务的架构的服务发布方法及装置。

【背景技术】
[0002] 面向服务的架构,是一种新的构造分布式应用程序的方法,它将企业应用中分散 的功能组织成可以共享的基于标准的服务,这些服务能够迅速地被组合和重用,从而达到 了快速响应业务需求的目的。由于Webservice特有的与平台无关、与编程语言无关等特 性,成为系统集成中使用非常广泛的技术,并且Webservice作为一项工业标准,已经得到 越来越多厂商的支持;因此,在业内实现S0A服务大多是以Webservice服务的方式发布。
[0003] 在开发基于S0A应用的系统中,如何方便、快速地将现有业务功能发布成 Webservice供外部系统调用,在系统的集成阶段变得日益重要。现有技术中,S0A服务的发 布过程如下:文档-WSDL文件-Webservice服务。在上述S0A服务的发布过程中,月艮 务的定义和服务的描述通常需要编写文档,详细介绍服务的输出输入、每个字段的含义等 信息。通常S0A服务人员根据此文档,开发S0A服务,S0A服务调用人员又需要根据此文档 调用服务。其中,Webservice 服务描述语言(Web Services Description Language,WSDL) 作为Webservice交流的中介,是一门基于XML的语言,描述了 Webservice的服务定义以及 服务的通信,是跨平台的。而上述将文档转换成WSDL文件的过程一般是由手工编写完成 的,由于WSDL文件晦涩难懂不便于阅读,因此容易出现错漏的情况,从而导致开发周期长。


【发明内容】

[0004] 有鉴于此,本发明的主要目的在于提供一种基于面向服务的架构的服务发布方法 及装置,能够避免在编译过程中出现的错漏的情况,从而缩短开发周期。
[0005] 为达到上述目的,本发明的技术方案是这样实现的:
[0006] 本发明提供了一种基于面向服务的架构的服务发布方法,所述方法包括:确定文 档规范,并根据所述文档规范编写文档;确定所编写的文档不符合所述文档规范时,查找出 不符合所述文档规范的部分,并根据所述文档规范重新编写不符合所述文档规范的部分, 直至所述文档符合所述文档规范;根据所述文档规范与Webservice服务描述语言WSDL文 件规范的对应关系,将所述文档转换为WSDL文件;利用开源工具将所述WSDL文件发布为 Webservice 服务。
[0007] 上述方案中,所述文档规范至少包括有服务信息表格,所述服务信息表格至少包 括服务标识信息和服务类型信息。
[0008] 上述方案中,所述文档包括有输入和输出,所述文档规范包括:所述输入为至少包 括字段名称、字段类型的信息的输入表格,所述输出为至少包括字段名称、字段类型的信息 的输出表格。
[0009] 上述方案中,所述文档的输入和输出中的数据为第一复杂对象数据时,所述文档 规范包括:所述第一复杂对象数据为以所述第一复杂对象数据的字段名命名的表格;所述 第一复杂对象数据中的数据为第二复杂对象数据时,所述文档规范包括:所述第二复杂对 象数据为以所述第一复杂对象数据的字段名命名的表格;所述文档的输入和输出中复杂对 象数据具有同一字段类型时,所述文档规范包括:所述输入中的复杂对象数据与所述输出 中的复杂对象数据为同一数据。
[0010] 上述方案中,所述文档为word文档、和/或excel文档;对应的,所述表格为word 文档中的表格和/或excel文档中的sheet。 toon] 本发明还提供了一种基于面向服务的架构的服务发布装置,所述装置包括第一确 定单元、编写单元、第二确定单元、查找单元、转换单元和发布单元;其中,所述第一确定单 元,用于确定文档规范;
[0012] 所述编写单元,用于根据所述文档规范编写文档;所述第二确定单元,用于确定所 编写的文档不符合所述文档规范时触发所述查找单元,确定所编写的文档符合所述文档规 范时,触发所述转换单元;所述查找单元,用于查找出不符合所述文档规范的部分时,触发 所述编写单元根据所述文档规范重新编写不符合所述文档规范的部分;所述转换单元,根 据所述文档规范与Webservice服务描述语言WSDL文件规范的对应关系,将所述文档转换 为WSDL文件;所述发布单元,用于利用开源工具将所述WSDL文件发布为Webservice服务。
[0013] 上述方案中,所述文档规范至少包括有名称为服务信息的服务信息表格,所述服 务信息表格包括服务标识信息和服务类型信息。
[0014] 上述方案中,所述文档包括有输入和输出时,所述文档规范包括:所述输入为至少 包括字段名称、字段类型的信息的输入表格,所述输出为至少包括字段名称、字段类型的信 息的输出表格。
[0015] 上述方案中,所述文档的输入和输出中的数据为第一复杂对象数据时,所述文档 规范包括:所述第一复杂对象数据为以所述第一复杂对象数据的字段名命名的表格;所述 第一复杂对象数据中的数据为第二复杂对象数据时,所述文档规范包括:所述第二复杂对 象数据为以所述第一复杂对象数据的字段名命名的表格;所述文档的输入和输出中复杂对 象数据具有同一字段类型时,所述文档规范包括:所述输入中的复杂对象数据与所述输出 中的复杂对象数据为同一数据。
[0016] 上述方案中,所述文档为word文档、和/或excel文档;对应的,所述表格为word 文档中的表格和/或excel文档中的sheet。
[0017] 本发明提供的基于面向服务的架构的服务发布方法及装置,先确定文档规范,并 根据所述文档规范编写文档;再确定所编写的文档不符合所述文档规范时,查找出不符合 所述文档规范的部分,并根据所述文档规范重新编写不符合所述文档规范的部分,直至所 述文档符合所述文档规范;然后,根据所述文档规范与Webservi ce服务描述语言WSDL文件 规范的对应关系,将所述文档转换为WSDL文件;最后,利用开源工具将所述WSDL文件发布 为Webservice服务;如此,能够避免在编译过程中出现的错漏的情况,从而缩短开发周期。

【专利附图】

【附图说明】
[0018] 图1为本发明基于面向服务的架构的服务发布方法的实现流程示意图;
[0019] 图2为本发明基于面向服务的架构的服务发布装置的组成示意图。

【具体实施方式】
[0020] 本发明的基本思想是:先确定文档规范,并根据所述文档规范编写文档;再确定 所编写的文档不符合所述文档规范时,查找出不符合所述文档规范的部分,并根据所述文 档规范重新编写不符合所述文档规范的部分,直至所述文档符合所述文档规范;然后,根据 所述文档规范与Webservice服务描述语言WSDL文件规范的对应关系,将所述文档转换为 WSDL文件;最后,利用开源工具将所述WSDL文件发布为Webservice服务。
[0021] 这里,所述文档规范至少包括有服务信息表格,所述服务信息表格至少包括服务 标识信息和服务类型信息。
[0022] 这里,所述文档包括有输入和输出时,所述文档规范包括:所述输入为至少包括字 段名称、字段类型的信息的输入表格,所述输出为至少包括字段名称、字段类型的信息的输 出表格。
[0023] 这里,所述文档的输入和输出中的数据为第一复杂对象数据时,所述文档规范包 括:所述第一复杂对象数据为以所述第一复杂对象数据的字段名命名的表格;
[0024] 所述第一复杂对象数据中的数据为第二复杂对象数据时,所述文档规范包括:所 述第二复杂对象数据为以所述第一复杂对象数据的字段名命名的表格;
[0025] 所述文档的输入和输出中复杂对象数据具有同一字段类型时,所述文档规范包 括:所述输入中的复杂对象数据与所述输出中的复杂对象数据为同一数据。
[0026] 这里,所述文档为word文档、和/或excel文档;对应的,所述表格为word文档中 的表格和/或excel文档中的sheet。
[0027] 下面结合附图和具体实施例对本发明的技术方案进一步详细阐述。
[0028] 图1为本发明基于面向服务的架构的服务发布方法的实现流程示意图,如图1所 示,该基于面向服务的架构的服务发布方法包括以下步骤:
[0029] 步骤101,确定文档规范,并根据所述文档规范编写文档;
[0030] 这里,所述文档规范至少包括:名称为服务信息的服务信息表格,所述服务信息表 格用于描述服务信息,至少包括服务标识和服务类型;其中,所述服务类型包括读出和/或 写入。
[0031] 所述文档包括输入和输出时,所述文档规范包括:所述输入为名称为输入的输入 表格,所述输入表格用于描述输入,且至少包括字段名称、字段类型;所述输出为名称为输 出的输出表格,所述输出表格用于描述输出,且至少包括字段名称、字段类型。
[0032] 3)所述文档的输入和输出中的数据为第一复杂对象数据时,所述文档规范包括: 所述第一复杂对象数据为以所述第一复杂对象数据的字段名命名的表格;
[0033] 所述第一复杂对象数据中的数据为第二复杂对象数据时,所述文档规范包括:所 述第二复杂对象数据为以所述第一复杂对象数据的字段名命名的表格;
[0034] 所述文档的输入和输出中复杂对象数据具有同一字段类型时,所述文档规范包 括:所述输入中的复杂对象数据与所述输出中的复杂对象数据为同一数据。
[0035] 上述确定的文档规范是一些基本的文档规范,本领域的技术人员在实际应用过程 中可进行相应的调整。例如:所述文档规范可以是:
[0036] 所述服务信息表格还可以包括服务名称、服务描述、同步/异步方式、实现方式业 务场景说明、业务规则和逻辑、出错和异常处理机制、数据量、响应时间要求、服务安全和权 限要求、使用建议和其他等。其中,所述实现方式包括Webservice、Java消息服务(Java Message Service,JMS)和 Oracle 的数据集成类工具(Oracle Data Integrator,ODI)。
[0037] 所述输入表格还可以包括序号、字段描述、要求和字段约束等。其中,所述要求包 括是(Y)和否(N),用于描述输入表格中的数据是否是必填的信息,若是,则要求选项中的 备注为Y,反之,则要求选项中的备注为N。
[0038] 所述输出表格还可以包括序号、字段描述、要求和字段约束等。
[0039] 所述输入表格和所述输出表格中的数据可包括简单对象数据和复杂对象数据。所 述简单对象数据为文本数据(包括字符数据和数值),例如:北京,深圳,数字(1、2、3),或者 货币,例如货币类型数据:Y123. 25等;而所述复杂对象数据为非简单对象类型的数据,需 要通过表格来进一步描述的数据。
[0040] 步骤102,确定所编写的文档不符合所述文档规范时,查找出不符合所述文档规范 的部分,并根据所述文档规范重新编写不符合所述文档规范的部分,直至所述文档符合所 述文档规范;
[0041] 步骤102旨在维护所述文档规范,以防止在将文档转换为WSDL文件过程中出现错 漏的情况。
[0042] 步骤103,根据所述文档规范与Webservice服务描述语言WSDL文件规范的对应关 系,将所述文档转换为WSDL文件;
[0043] 这里,可根据所述文档规范与Webservice服务描述语言WSDL文件规范的对应关 系确定转换模块,所述转换模块用于根据所述文档自动生成WSDL文件;所述转换模块为根 据所述文档规范和WSDL文件的相关规范编程的程序。优选的,所述程序为采用Java面向 对象程序设计语言(Java语言)编写的程序。利用所述转换模块可不但能够避免在编译过 程中出现的错漏的情况,而且能够缩短开发周期,提高效率。
[0044] 步骤104,利用开源工具将所述WSDL文件发布为Webservice。
[0045] 这里,所述开源工具为Webservice的开源工具AXIS和CXF。本领域的技术人员可 根据各种现有技术来实现本发明的步骤104,这里不再赘述。
[0046] 以下结合具体的实施例,对本发明的技术方案的具体实施过程作进一步详细阐 述。
[0047] 实施例:假设欲发布的S0A服务的名称为同步过滤条件信息服务,该服务用于网 管系统需要向资源同步数据时,使用本服务设置同步过滤条件,资源系统接收到过滤条件 后,即开始准备数据并将结果上传到文件服务器,因此该S0A的服务描述为网管系统通过 本服务在资源系统里设置同步过滤条件,包括:同步时间/周期/同步模式增量/全量/资 源对象;服务的类型为写入模式,并采用同步方式来实现;发布方式采用Webservice ;要求 实时调用,且调用时间小于5秒;数据量大约在100KB以内。该S0A服务的业务规则和逻辑 包括:
[0048] 1)目前只支持到实体对象级别的条件设置;
[0049] 2)如果对象实体参数为空,则要获取的资源对象就是接口定义提到的所有资源对 象;
[0050] 3)资源系统要根据网管系统设置的同步模式去准备相应的数据。即如果是全量同 步,则综合网管要提供全量数据;如果是增量模式,则综合网管需要提供增量数据;
[0051] 4)资源系统获取全量数据后要和系统内原有数据进行比对,确认后在入库;
[0052] 5)资源系统获取增量数据后经手工或者自动确认后才可以入库;
[0053] 6)在资源系统正在准备数据的时候,是不允许网管系统调用该接口进行设置。
[0054] 该基于面向服务的架构服务包括输入和输出,输入对应的输入表格包括20项数 据,输出对应的输出表格包括5项数据,输入表格和输出表格的数据项中均含有复杂数据 对象。
[0055] 步骤201,确定文档规范,并根据所述文档规范编写文档;
[0056] 由于该基于面向服务的架构服务包括输入和输出,并且输入或输出中包括复杂对 象数据,因此,可将文档规范确定为下述的文档规范:
[0057] 1)所述服务信息表格包括服务标识、服务名称、服务描述、服务类型、同步/异步 方式、实现方式业务场景说明、业务规则和逻辑、出错和异常处理机制、数据量、响应时间要 求、服务安全和权限要求和使用建议等。
[0058] 2)所述输入表格用于描述输入,且包括序号、字段名称、字段类型、字段描述和备 注;所述输入表格用于描述输入,且包括序号、字段名称、字段类型、字段描述和备注;
[0059] 所述文档的输入和输出中的复杂对象数据以所述第一复杂对象数据的字段名命 名的表格;
[0060] 假设该基于S0A服务的文档采用word文档,基于步骤201的描述,步骤202所编 写的文档至少包括如表1所不的服务信息表格、如表2所不的输入表格、如表4所不的输出 表格以及如表3、表5和表6所不的复杂对象数据的表格。其中,
[0061] 所述输入表格一共包括20项,第20项字段名称为class_id_list,其字段类型为 数据实体,表明该项为复杂对象数据,因此,第20项数据应该含有以cla SS_id_liSt为名称 的表格(如表3所示),以进一步地表示该复杂对象数据。表3中的字段类型为表示字符数 据的varcharf,由于字符数据为简单对象数据,因此无需再通过表格来表述该数据项。
[0062] 所述输出表格包括5项,其中第4项和第5项的数据类型均为复杂对象数据,因此 第4项和第5项分别以ErrorCollection和ResponseCollection为表格名称建立表5和 表6。表5和表6中的字段类型均为简单对象,因此无需通过其他表格来表示其中的数据对 象。如果表5和表6中数据的字段类型仍为复杂对象,则还需要通过表格来表示该数据。
[0063] 当然,该服务也可采用excel文档,采用excel文档时与word文档类似,这里不再 赘述。需要说明的是表1至表6中的类型、数据和内容等,本领域的技术人员可以根据本领 域的相关常识进行相应的改动,只要所编写的表格符合本发明提出的文档规范即可。
[0064]

【权利要求】
1. 一种基于面向服务的架构的服务发布方法,其特征在于,所述方法包括: 确定文档规范,并根据所述文档规范编写文档; 确定所编写的文档不符合所述文档规范时,查找出不符合所述文档规范的部分,并根 据所述文档规范重新编写不符合所述文档规范的部分,直至所述文档符合所述文档规范; 根据所述文档规范与Webservice服务描述语言WSDL文件规范的对应关系,将所述文 档转换为WSDL文件; 利用开源工具将所述WSDL文件发布为Webservice服务。
2. 根据权利要求1所述的方法,其特征在于,所述文档规范至少包括有服务信息表格, 所述服务信息表格至少包括服务标识信息和服务类型信息。
3. 根据权利要求1所述的方法,其特征在于,所述文档包括有输入和输出,所述文档规 范包括:所述输入为至少包括字段名称、字段类型的信息的输入表格,所述输出为至少包括 字段名称、字段类型的信息的输出表格。
4. 根据权利要求3所述的方法,其特征在于,所述文档的输入和输出中的数据为第一 复杂对象数据时,所述文档规范包括:所述第一复杂对象数据为以所述第一复杂对象数据 的字段名命名的表格; 所述第一复杂对象数据中的数据为第二复杂对象数据时,所述文档规范包括:所述第 二复杂对象数据为以所述第一复杂对象数据的字段名命名的表格; 所述文档的输入和输出中复杂对象数据具有同一字段类型时,所述文档规范包括:所 述输入中的复杂对象数据与所述输出中的复杂对象数据为同一数据。
5. 根据权利要求1至4任一项所述的方法,其特征在于,所述文档为word文档、和/或 excel文档; 对应的,所述表格为word文档中的表格和/或excel文档中的sheet。
6. -种基于面向服务的架构的服务发布装置,其特征在于,所述装置包括第一确定单 元、编写单元、第二确定单元、查找单元、转换单元和发布单元;其中, 所述第一确定单元,用于确定文档规范; 所述编写单元,用于根据所述文档规范编写文档; 所述第二确定单元,用于确定所编写的文档不符合所述文档规范时触发所述查找单 元,确定所编写的文档符合所述文档规范时,触发所述转换单元; 所述查找单元,用于查找出不符合所述文档规范的部分时,触发所述编写单元根据所 述文档规范重新编写不符合所述文档规范的部分; 所述转换单元,根据所述文档规范与Webservice服务描述语言WSDL文件规范的对应 关系,将所述文档转换为WSDL文件; 所述发布单元,用于利用开源工具将所述WSDL文件发布为Webservice服务。
7. 根据权利要求6所述的装置,其特征在于,所述文档规范至少包括有名称为服务信 息的服务信息表格,所述服务信息表格包括服务标识信息和服务类型信息。
8. 根据权利要求6所述的装置,其特征在于,所述文档包括有输入和输出时,所述文档 规范包括: 所述输入为至少包括字段名称、字段类型的信息的输入表格,所述输出为至少包括字 段名称、字段类型的信息的输出表格。
9. 根据权利要求8所述的装置,其特征在于,所述文档的输入和输出中的数据为第一 复杂对象数据时,所述文档规范包括:所述第一复杂对象数据为以所述第一复杂对象数据 的字段名命名的表格; 所述第一复杂对象数据中的数据为第二复杂对象数据时,所述文档规范包括:所述第 二复杂对象数据为以所述第一复杂对象数据的字段名命名的表格; 所述文档的输入和输出中复杂对象数据具有同一字段类型时,所述文档规范包括:所 述输入中的复杂对象数据与所述输出中的复杂对象数据为同一数据。
10. 根据权利要求6至9任一项所述的装置,其特征在于,所述文档为word文档、和/ 或excel文档; 对应的,所述表格为word文档中的表格和/或excel文档中的sheet。
【文档编号】G06F17/30GK104298490SQ201310296146
【公开日】2015年1月21日 申请日期:2013年7月15日 优先权日:2013年7月15日
【发明者】李盼 申请人:深圳中兴网信科技有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1