欢迎来到知嘟嘟! 联系电话:13095918853 卖家免费入驻,海量在线求购! 卖家免费入驻,海量在线求购!
知嘟嘟
我要发布
联系电话:13095918853
知嘟嘟经纪人
收藏
专利号: 2017101682730
申请人: 浙江工业大学
专利类型:发明专利
专利状态:已下证
专利领域: 电通信技术
更新日期:2023-12-11
缴费截止日期: 暂无
价格&联系人
年费信息
委托购买

摘要:

权利要求书:

1.一种基于柔性描述模型的Web服务调用方法,其特征在于:所述方法包括如下步骤:

第一步:对已经发布在互联网上的SOAP服务和REST服务进行集成;

1.1、SOAP服务集成;WSDL是SOAP服务的描述文档,描述了SOAP服务的方法名、发布地址、功能和输入输出参数信息;首先通过人工手动收集WSDL或者爬虫程序爬取发布在互联网上的WSDL,其次对WSDL进行解析得到服务的具体描述信息并用SOAP服务柔性描述模型描述;

1.2、REST服务集成;REST服务采用基于自然语言的HTML文档来描述,为此,采用人工辅助或者爬虫程序爬取发布在互联网上的REST网页,对其解析提取出REST服务相关描述信息,如服务的名称、功能、发布地址、输入参数和输出参数信息;

第二步:对集成后的SOAP服务和REST服务采用柔性描述模型进行建模;

2.1、SOAP服务柔性描述模型;包含了SOAP服务的基本描述属性、SOAP服务的输入参数、返回信息以及用来实现SOAP服务调用的SOAP请求体信息;

2.2、REST服务柔性描述模型;包含了REST服务的基本描述属性、REST服务的输入参数和返回信息;

第三步:基于所述柔性描述模型,SOAP服务和REST服务调用方法如下:

3.1:SOAP服务调用方法;根据SOAP服务柔性描述模型,生成SOAP服务的请求体,将用户输入的信息与所生成的SOAP服务请求体进行拼接替换生成本次访问的、真实的SOAP请求体,并采用JAVA语言的HttpURLConnection类将该请求体发送至SOAP服务器,实现SOAP服务的调用;

3.2:REST服务调用方法;根据REST服务柔性描述模型,生成REST服务的请求体,将用户输入的信息与所生成的REST服务请求体进行拼接替换生成本次访问的、真实的REST请求体,并采用JAVA语言的HttpURLConnection类将该请求体发送至REST服务器,实现REST服务的调用;

所述步骤1.1中,WSDL解析过程如下:

1.1.1、获取WSDL文件的根节点definitions节点,解析出所有的service节点,service节点包含了服务的名称,其次解析出对应service节点下的port节点,port节点包含了服务的发布地址;

1.1.2、根据步骤1.1.1中解析得到的port节点去查找binding节点,binding节点用来描述服务的通信协议;

1.1.3、根据步骤1.1.2中解析得到的binding节点去查找portType节点,portType节点下每一个operation节点代表一个方法,每一个operation节点下都有一个input节点和output节点,分别代表该方法的输入与输出;

1.1.4、根据步骤1.1.3中解析得到的每一个operation节点下的input节点查找message节点,message节点用来描述通信消息数据结构的抽象类型化定义;

1.1.5、根据步骤1.1.4中解析得到的message节点下的part节点查找element节点;

1.1.6、根据步骤1.1.5中解析得到的element节点查找conplexType节点,conplexType节点下指明了步骤1.1.3中对应方法输入参数和输出参数的名称及其类型。

2.如权利要求1所述的一种基于柔性描述模型的Web服务调用方法,其特征在于:所述步骤1.2中,REST服务网页解析过程如下:

1.2.1、爬取REST服务原始网页,利用爬虫引擎将发布在互联网上的REST服务原始网页抓取,获得HTML页面基础库,为后续的特征提取做好准备;

1.2.2、去噪,对HTML页面基础库中的页面进行去噪处理,过滤掉无关的内容,保留页面的主体部分;

1.2.3、分词去除停用词,对步骤1.2.2中所得的页面主体进行分词,将页面主体中的句子划分为词语并移除无意义的词语如“a”、“the”词汇;

1.2.4、建立数据词典,建立表示输入、输出、标签和服务描述规则的数据词典,如“请求参数说明”、“返回参数说明”、“请求方式”;

1.2.5、特征提取,利用所建立的数据词典,在遍历网页过程中进行服务特征提取,包括服务的名称、服务的功能描述、服务的输入输出信息,并将特征提取后的服务存入Web服务库。

3.如权利要求1所述的一种基于柔性描述模型的Web服务调用方法,其特征在于:所述步骤2.1中,定义1:SOAP服务柔性描述模型是由基本描述属性、SOAP请求体、输入参数、返回信息组成的四元组;

SOAP-FDM=attributes描述服务的基本信息,包含了服务的名称、类型、描述信息、发布地址、调用方法和来源;

soapRequestBody来自于JAVA库解析WSDL文件,用来与SOAP服务器进行通信,实现SOAP服务的自动化调用;

inputParams描述了所需的输入参数信息,包括输入参数的个数、类型和含义;

outputParams描述了返回信息,包含返回信息的含义以及类型;

其中,attributes是一个九元组,形式化表示为如下形式:

attributes=id是每个服务的唯一标识符,url是服务发布的地址,serviceType是指明服务类型,取值为soap或者rest,name是服务的英文名字,chiName是服务的中文名字,method服务调用的方法,description是服务的功能描述、comeFrom是服务的来源,area是服务所属的领域;

soapRequestBody在“”标签内分布着该SOAP服务的所有输入参数名称,用来和服务器进行通信,实现SOAP服务的调用;inputParams是由输入参数组成的集合,形式化表述为inputParams=;outputParams是由输出参数组成的集合,形式化表述为outputParams=;param是一个二元组,有参数类型type、输入输出参数描述inputParamDes/outputParamDes组成,即param=

4.如权利要求3所述的一种基于柔性描述模型的Web服务调用方法,其特征在于:所述步骤2.2中,定义2:REST服务柔性描述模型是由基本描述属性、输入参数、返回信息组成的三元组,REST-FDM=attributes包含了服务的名称、类型、描述信息、发布地址、调用方法和来源;

inputParams描述了所需的输入参数信息,包括输入参数的个数、类型和含义;

outputParams描述了返回信息,包含返回信息的含义以及类型;

其中,attributes是一个十一元组,可形式化表示为如下形式:

attributes=queryType是REST服务的参数来源,contentType是REST服务的返回信息编码格式;

queryType属性指明了REST服务的参数来源,取如下几类标注:@PathParam、@QueryParam、@HeaderParam、@CookieParam、@MatrixParam、@FormParam;@PathParam表明请求来自于url的路径,@QueryParam表明请求自于url的查询参数;contentType为浏览器端以编码格式接收返回结果,可取text/xml、text/plain和application/json,application/json表示服务调用后的返回信息将以JSON格式返回;通过将用户的输入请求与服务的发布地址进行拼接,即可实现REST服务的自动化调用。

5.如权利要求1所述的一种基于柔性描述模型的Web服务调用方法,其特征在于:所述步骤3.1中,SOAP服务调用方法如下:SOAP服务由于其柔性描述模型中的soapRequestBody属性记录了SOAP服务的请求体模板,该请求体模板基于XML Schema规范来描述,通过将用户输入的参数值与SOAP服务的请求体模板中对应的输入参数进行替换拼接,生成最终真实的SOAP服务的请求体,再通过将SOAP请求体发送至SOAP服务器端即可进行SOAP服务的自动化调用。

6.如权利要求1所述的一种基于柔性描述模型的Web服务调用方法,其特征在于:所述步骤3.2中,REST服务调用方法如下:REST服务根据其柔性描述模型中url属性指明了服务的发布地址,queryType属性指明了调用该服务的参数来自于HTTP请求的哪个位置,method属性指明了调用服务的方法,根据这些信息,生成满足柔性描述模型要求的REST请求体,最后将该请求体发送至对应REST服务器端即可进行REST服务的自动化调用。