CN101166197A - 用于提供web服务的设备以及方法 - Google Patents

用于提供web服务的设备以及方法 Download PDF

Info

Publication number
CN101166197A
CN101166197A CNA2007101802508A CN200710180250A CN101166197A CN 101166197 A CN101166197 A CN 101166197A CN A2007101802508 A CNA2007101802508 A CN A2007101802508A CN 200710180250 A CN200710180250 A CN 200710180250A CN 101166197 A CN101166197 A CN 101166197A
Authority
CN
China
Prior art keywords
data
definition
service request
request information
input
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.)
Granted
Application number
CNA2007101802508A
Other languages
English (en)
Other versions
CN101166197B (zh
Inventor
伊庭嘉仁
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by International Business Machines Corp filed Critical International Business Machines Corp
Publication of CN101166197A publication Critical patent/CN101166197A/zh
Application granted granted Critical
Publication of CN101166197B publication Critical patent/CN101166197B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/958Organisation or management of web site content, e.g. publishing, maintaining pages or automatic linking
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99941Database schema or data structure
    • Y10S707/99948Application of database or data structure, e.g. distributed, multimedia, or image

Abstract

公开了用于提供WEB服务的设备以及方法,用于使得用于提供Web服务的系统的开发或维护和管理更加容易。用于提供服务的提供设备存储通用定义数据,该通用定义数据定义将由服务请求消息满足的规范,而与接收到的服务请求消息中包含的输入数据的数据结构无关,以及定义由不同数据结构的输入数据满足的单个定义数据。在接收到包含输入数据和允许将输入数据的数据结构标识为元素的接口ID的服务请求消息时,提供设备验证服务请求消息的数据结构是否满足通用定义数据。此外,提供设备还检索对应于接收到的接口ID的单个定义数据,并判断服务请求消息是否满足单个定义数据。如果服务请求消息满足通用定义数据和单个定义数据,则提供设备对对应于输入数据的数据结构的服务进行处理。

Description

用于提供WEB服务的设备以及方法
技术领域
本发明涉及用于提供Web服务的设备以及方法。具体来说,本发明涉及用于判断用于请求服务的服务请求消息是否满足规范,然后提供对应于服务请求消息的服务的设备,并涉及用于执行同一种操作的方法。
背景技术
迄今为止,WSDL(Web服务描述语言)一直被用作描述Web服务的接口的规范的语言(参见作为有关WSDL的技术文件的专利文件1)。在用于提供Web服务的提供设备中,用于请求可以由设备进行处理的服务的消息的数据结构的规范是以WSDL编写的。然后,提供设备作为服务的定义数据来说明编写的规范。用于请求Web服务的请求设备生成符合所说明的数据结构的消息,并向提供设备发送该消息。提供设备根据消息中的每一个元素是否都匹配以WSDL编写的数据中的对应元素,判断接收到的消息是否符合规范。如果消息符合规范,则适当地对服务进行处理。此外,请求设备还可以根据定义数据自动地生成用于请求服务的应用程序。
[专利文件1]  日本未经审查的专利申请出版物No.2005-174120
发明内容
[本发明解决的问题]
用于请求Web服务的消息包含用于标识服务提供设备的URI(统一资源标识符),被请求的服务的标识名,以及要被馈送到服务以便服务进行处理的输入数据。被请求的服务由URI和服务标识名称唯一地标识,服务标识名称确定被标识的服务的输入数据的数据结构。以WSDL编写的定义数据作为这样的URI、标识名称,以及输入数据的数据结构的组合来定义Web服务的接口。
当Web服务提供设备提供彼此类似的多个服务时,则可能需要通过附加通用的标识名称来管理这些服务。例如,当作为Web服务提供使用应用程序表单的应用程序服务时,服务“submit”的内容是通用的,而与应用程序表单的类型无关,虽然对于每一种类型的应用程序表单,输入数据的结构是不同的。相应地,通过附加通用的标识名称并根据输入数据的结构执行不同的操作来管理这些服务,不仅使得对用于对服务进行处理的程序的维护和管理更加容易,而且对于提供方法过载功能的已知程序语言,具有高的亲和力。
然而,如果对具有以已知WSDL编写的不同数据结构的输入数据的多个服务定义了相同的标识名称,则不能执行成功的操作,因为不能唯一地标识服务。当为每一个服务提供了提供设备时,定义具有相同的标识名称的多个服务成为可能。然而,随着服务的数量增大,这需要许多提供设备,这可能会导致系统复杂化。
相应地,本发明的目的是提供一种能够解决上文所描述的问题的提供设备、系统、方法以及程序。此目的是通过将所附的权利要求中的独立权利要求中所描述的特征组合起来取得的。另外,从属权利要求定义了本发明的进一步的有益的实施例。
[解决问题的手段]
为解决上文所描述的问题,根据本发明的一个方面,提供了一种用于接收服务请求消息并提供对应于接收到的服务请求消息中包含的输入数据的结构的服务的提供设备,该提供设备包括:通用定义存储器,用于预先存储通用定义数据,该通用定义数据定义要被接收到的服务请求消息的数据结构共同满足的规范,而与消息中包含的输入数据的数据结构无关,用于使用通信接口接收所述服务请求消息的接收器,所述服务请求消息包含所述输入数据和允许将所述输入数据的数据结构标识为元素的接口标识符,通用验证器,用于通过中央处理单元的操作,根据所述接收到的服务请求消息中的每一个元素是否匹配所述通用定义数据中的对应元素,验证所述接收到的服务请求消息是否满足所述规范,单个定义存储器,用于与所述接口标识符相关联地预先存储单个定义数据,所述单个定义数据定义由所述接口标识符所标识的数据结构的规范,所述规范将被匹配于所述通用定义数据中的ANY元素的输入数据满足,其中所述ANY元素匹配于不同数据结构中的任何输入数据,检索器,用于通过所述中央处理单元的操作从所述单个定义存储器中检索和读出对应于所述接收到的服务请求消息中包含的所述接口标识符的单个定义数据,单个验证器,用于通过所述中央处理单元的操作,确定如果所述服务请求消息中的每一个元素都匹配所述检索到的单个定义数据中的所述对应元素,则所述服务请求消息满足所述规范,以及服务处理器,用于如果所述服务请求消息中的每一个元素都匹配所述通用定义数据和所述单个定义数据中的所述对应元素,则通过所述中央处理单元的操作,对对应于所述服务请求消息中包含的所述输入数据的数据结构的所述服务进行处理。此外,还提供了一种使信息处理设备用作提供设备的程序。
在如上文所提及的本发明的发明内容中,并没有列举本发明的所有必要的特征,这些特征的再组合也可以构成本发明。
附图说明
图1显示了信息系统10的配置的概述。
图2显示了信息系统20的配置的概述。
图3显示了服务提供设备30的功能配置。
图4显示了服务处理单元300的功能配置。
图5显示了接口定义单元310的功能配置。
图6显示了存储在通用定义存储器400中的通用定义数据的示例。
图7显示了单个定义存储器430中的数据结构的示例。
图8显示了测试WSDL文件700的示例。
图9显示了用于响应来自用户的输入生成单个定义数据的过程。
图10显示了输入接收器500显示出的输入屏幕的示例。
图11显示了响应接收服务请求消息对服务进行处理的流程。
图12显示了用作服务提供设备30的信息处理设备1200的硬件配置的示例。
[附图标记]
10:信息系统
20:信息系统
30:服务提供设备
100:服务提供设备
105:定义数据
110:服务请求设备
200:服务提供设备
205:定义数据
210:服务请求设备
300:服务处理单元
310:接口定义单元
320:服务请求设备
400:通用定义存储器
410:接收器
420:通用验证器
430:单个定义存储器
440:检索器
450:单个验证器
460:服务处理器
500:输入接收器
510:定义数据生成器
520:定义数据管理器
700:测试WSDL文件
1200:信息处理设备
具体实施方式
虽然下面将通过具体实施方式(下面,简称为实施例)来描述本发明,但是,下面将给出的实施例并不限制由权利要求所定义的本发明,并非实施例中所描述的所有特征的组合对本发明的解决手段都是不可缺少的。
图1显示了信息系统10的配置的概述。信息系统10包括服务提供设备100-1到100-N和分别对应于服务提供设备100-1到100-N的服务请求设备110-1到110-N。服务提供设备100-1到100-N中的每一个都根据具有彼此不同的数据结构的输入数据提供类似的服务。例如,所有服务提供设备100-1到100-N都接受提交的在工作流管理中所使用的应用程序表单数据。然而,每一个服务提供设备100-1到100-N都涵盖了对不同种类的应用程序表单的处理。
服务提供设备100-1到100-N分别存储对应的定义数据105-1到105-N。定义数据105-1到105-N是以例如WSDL编写的。在从对应的服务请求设备110接收服务请求消息时,每一个服务提供设备100-1到100-N验证服务请求消息的数据结构是否满足规范。此验证是根据对应的定义数据105中的每一个元素是否都匹配服务请求消息中的对应元素来执行的。图1概要显示了通过将定义数据105安排在服务提供设备100的附近来使用定义数据105进行的验证。
此外,还向对应的服务请求设备110说明定义数据105。每一个服务请求设备110-1到110-N都从服务提供设备100获取对应的定义数据105,并将定义数据105存储在其中。服务请求设备110-1到110-N的每一个用户都创建用于请求服务的应用程序,以便在浏览所获得的定义数据105时请求消息符合规范。然后,用户在服务请求设备110中运行应用程序。或者,每一个服务请求设备110-1到110-N都可以利用基于定义数据自动地创建应用程序的软件来自动地创建用于请求服务的应用程序。
相应地,可以安装多个服务提供设备和多段定义数据,以提供使用具有不同结构的输入数据的类似的服务类型。然而,此配置需要与输入数据的数据结构的类型数成比例的服务提供设备。例如,在作为对应的定义数据提供定义数据105-(N+1)之后必须新添加服务提供设备,以便添加具有不同数据结构的输入数据。添加服务提供设备100-(N+1)需要安装新的设备,或需要修改Web页面的配置,并新开发用于对服务进行处理的应用程序,即使不另外安装设备,这是比较麻烦的。
图2显示了信息系统20的配置的概述。信息系统20包括服务提供设备200和服务请求设备210。即使服务请求消息包含不同数据结构的多段输入数据中的任何一段,服务提供设备200根据数据结构对操作进行分类,并有选择地对适当的服务进行处理。服务提供设备200还存储定义数据205。如在如图1所示的情况,定义数据205用于验证服务请求消息是否满足规范。
定义数据205包括匹配不同数据结构的任何输入数据的ANY元素。具体来说,服务提供设备200根据定义数据205判断是否满足要被共同满足的规范,而与输入数据的数据结构无关。另一方面,服务提供设备200不根据定义数据205判断服务请求消息中包含的输入数据是否满足规范。在输入数据的数据结构之外的数据结构满足规范的条件下,服务提供设备200基于输入数据执行操作。
将定义数据205通知给服务请求设备210。定义数据205用于在服务请求设备210中开发应用程序。然而,由于定义数据205包含输入数据的ANY元素,可以限制用于请求服务的应用程序的自动创建。具体来说,在完全理解在服务提供设备200中根据数据结构执行操作的分类之后,程序开发人员必须创建适合于操作的适当的应用程序。因此,最初用于对接口进行定义的定义数据205,不起作用。结果,难以准确地定义程序的规范,可能要花许多精力和成本来维护和管理或改进程序。
另一方面,如下所示的服务提供设备30将接口定义清楚地通知给服务请求设备。同时,可以由一个服务提供设备30对具有多个不同数据结构的输入数据进行处理。下面将具体地描述服务提供设备30。
图3显示了服务提供设备30的功能配置。服务提供设备30包括服务处理单元300和接口定义单元310。服务提供设备30被设计为响应来自每一个服务请求设备320-1到320-N的请求而对服务进行处理。服务处理单元300被虚拟地分配给Web系统上的一个位置。即,使用URI(统一资源标识符)从外部以可标识的方式对服务处理单元300进行管理。服务处理单元300从服务请求设备320-1到320-N中的某一个(例如,服务请求设备320-1)接收服务请求消息。然后,服务处理单元300验证服务请求消息是否满足必须满足的规范以请求可以由服务处理单元300进行处理的服务。此验证是根据通用定义数据和单个定义数据执行的。通用定义数据定义了不管输入数据的数据结构如何而共同满足的规范,而单个定义数据允许对输入数据的数据结构是否满足规范进行单个的验证。如果满足规范,则服务处理单元300对服务进行处理,并将处理结果返回到服务请求设备320-1。
接口定义单元310从用户接受有关输入数据的数据结构的新的规范的输入。接口定义单元310根据此规范生成单个定义数据,并将所生成的单个定义数据存储在服务处理单元300中。这可使服务处理单元300根据此单个定义数据验证服务请求消息。此外,接口定义单元310还将所生成的单个定义数据通知给服务请求设备320-1到320-N。这可使每一个服务请求设备320-1到320-N生成符合单个定义数据的服务请求消息,并将所生成的服务请求消息发送到服务处理单元300。
图4显示了服务处理单元300的功能配置。服务处理单元300具有通用定义存储器400,接收器410,通用验证器420,单个定义存储器430,检索器440,单个验证器450,以及服务处理器460。服务处理单元300向服务请求设备320-1到320-N提供Web服务。这些单元中的每一个单元都是通过稍后将描述的中央处理单元(CPU)1000和随机存取存储器(RAM)1020的操作来实现的。下面将作为示例描述这些单元中的每一个单元的功能,其中,在从服务请求设备320-1接收服务请求之后服务处理单元300对服务进行处理。
通用定义存储器400预先存储通用定义数据,该通用定义数据定义接收到的服务请求消息的数据结构应该共同满足的规范,而与消息中包含的输入数据的数据结构无关。通用定义数据可以以例如Web服务描述语言WSDL进行编写。此通用定义数据包含可扩展标记语言XML的ANY数据类型的元素或“ANY”元素。ANY类型元素或ANY元素匹配不同数据结构的多段输入数据中的任何一个。利用此配置,可以判断不包括服务请求消息的输入数据的部分是否满足规范。
接收器410使用稍后所描述的通信接口(I/F)1030从服务请求设备320-1接收服务请求消息,包括输入数据和允许将输入数据的数据结构标识为元素的接口ID。此服务请求消息是,例如,包含接口ID作为元素的SOAP(简单对象访问协议)消息。此接口ID可以由在服务请求设备320-1中操作的用于请求服务的应用程序来提供,作为SOAP消息中的预先确定的标记的属性值。或者,此接口ID可以是SOAP消息中设置的命名空间的名称。
通用验证器420从通用定义存储器400读出通用定义数据。然后,通用验证器420通过CPU 1000的操作,根据接收到的服务请求消息中的每一个元素是否匹配通用定义数据中的对应元素,来验证接收到的服务请求消息是否满足规范。例如,由于通用定义数据中的ANY元素匹配任何数据结构的输入数据,因此,服务请求消息满足通用的规范,即使它包含任何数据结构的输入数据。然而,如果不包括输入数据的部分中的每一个元素不匹配通用定义数据中包括的对应元素,则服务请求消息不满足规范。例如,此验证判断可以作为使用XML架构的WSDL验证过程来实现。
单个定义存储器430与接口ID相关联地预先存储单个定义数据,单个定义数据定义由接口ID所标识的数据结构的规范。单个定义数据定义了匹配通用定义数据中的ANY元素的输入数据应该满足的数据结构的规范。此外,还可以通过将通用定义数据中包括的ANY数据类型的元素或ANY元素替换为匹配具有不同数据类型或不同标识信息的输入数据的多个元素来生成每一个单个定义数据。
检索器440通过CPU的操作从单个定义存储器430中检索并读出对应于接收到的服务请求消息中包括的接口ID的单个定义数据。在服务请求消息的每一个元素都匹配检索到的单个定义数据的对应元素的条件下,那么,单个验证器450通过CPU 1000的操作判断服务请求消息满足规范。此判断也可以作为使用XML架构的WSDL验证过程来实现。
如果服务请求消息中的每一个元素都匹配通用定义数据和单个定义数据中的对应元素,那么,服务处理器460通过CPU 1000的操作,对对应于服务请求消息中包含的输入数据的数据结构的服务进行处理。
图5显示了接口定义单元310的功能配置。接口定义单元310具有输入接收器500、定义数据生成器510,以及定义数据管理器520。为了对服务进行处理,对于输入数据中包括的每一个输入项,输入接收器500接收用户通过诸如键盘或指示设备之类的输入设备输入的输入项的项目名和输入项的数据类型。例如,在提供了用于接受提交的在工作流管理中所使用的应用程序表单的服务的情况下,在应用程序表单中写入的数据对应于输入数据,应用程序表单中包括的每一项都对应于输入数据的输入项。可以根据项的特征,向应用程序表单的项中输入数值或字符。这样的数据特征对应于数据类型。即,当用户希望提供用于接受提交的新的应用程序表单的服务时,用户只需要使用键盘等等向输入接收器500中输入应用程序表单中包括的每一项的项目名,数据类型,及其他信息。
定义数据生成器510通过CPU 1000的操作从通用定义存储器400中读出通用定义数据。然后,定义数据生成器510将通用定义数据中包括的ANY元素替换为以由输入接收器500接收到的项目名作为元素名称、并以由输入接收器500接收到的数据类型作为数据类型属性的元素。然后,定义数据生成器510使用替换后的定义数据作为生成的新的单个定义数据,并将生成的单个定义数据提供到定义数据管理器520。定义数据管理器520通过CPU 1000的操作与允许标识替换后的元素的接口ID相关联地将生成的单个定义数据存储在单个定义存储器430中。然后,定义数据管理器520将接口ID通知给服务请求设备320-1到320-N。接口ID可以通过接受用户的输入以及项目名的输入等等(例如)来生成。此外,还可以根据预先确定的规则生成没有重复的字符、签名或编号,并用作接口ID。
或者,可以生成接口ID并将其包括在单个定义数据中。例如,定义数据生成器510可以通过将通用定义数据中的ANY元素替换为以项目名为元素名称的元素,然后将元素的标识信息作为命名空间的名称添加到定义数据中,来生成新的单个定义数据。在此情况下,定义数据管理器520不必与单个定义数据分开地将接口ID通知给服务请求设备320-1到320-N。如果定义数据管理器520将单个定义数据通知给服务请求设备320-1到320-N,也将其中包括的接口ID通知给服务请求设备320-1到320-N。在这样的情况下,服务请求设备320-1到320-N只需要基于通知的单个定义数据生成服务请求消息。如此,服务请求设备320-1到320-N可以包括作为服务请求消息中的命名空间的名称提供给它们的接口ID,而不进行涉及接口ID的显式处理。
图6是存储在通用定义存储器400中的通用定义数据的示例。此通用定义数据是以WSDL编写的,不仅包含用于定义输入数据的数据结构的类型定义,而且还包含消息定义、绑定定义,以及服务定义。图6有选择地显示了这些定义之中的类型定义。在此通用定义数据中,在第3行中定义了服务标识信息“submit”。在随后的第4行到第9行中,定义了对服务进行处理所需的输入数据的数据结构。具体来说,第6行表示元素名称为“fixedParameter”的数据是字符串类型“string”。第7行的数据是ANY元素,并匹配给定数量的给定数据类型的元素。第5和8行表示第6和7行的元素是按此顺序编写的。具体来说,如果服务“submit”的输入数据是以字符串类型“fixedParameter”的元素开始接下来是给定元素的数据,那么,输入数据被判断为符合规范。
第11到17行显示了具有标识信息“submitReseponse”的服务。此服务的输入数据的数据结构不包含ANY元素。相应地,只有给定了预先定义数据,即,标识名称为“submitReturn”的字符串类型的数据,被允许作为此服务的输入,而其他类型的输入被判断不满足规范。
图7显示了单个定义存储器430中的数据结构的示例。单个定义存储器430与接口ID相关联地预先存储单个定义数据,单个定义数据定义由接口ID所标识的数据结构的规范。单个定义数据是,例如,彼此独立的WSDL文件,并可以根据其应用和服务的处理内容,附加不同的文件名。例如,接口ID为1的单个定义数据包括在名为“TEST.wsdl”的文件中。存储在此文件中的单个定义数据被称为测试wsdl文件700。检索器440从接收到的服务请求消息中提取接口ID,然后从单个定义存储器430中检索对应于接口ID的WSDL文件。然后,检索器440读出检索到的WSDL文件,并将WSDL文件输出到单个验证器450。
图8显示了测试WSDL文件700的示例。类似于图6的说明,图8有选择地显示了来自单个定义数据的数据类型定义。此单个定义数据定义了匹配通用定义数据中的ANY元素的输入数据应该满足的数据结构的规范。数据结构由如图7所示的接  ID“1”来进行标识。具体来说,图8中的第3行指出,定义了服务“submit”的接口。在第4到10行写入了定义的实体。第6行表示元素名称为“fixedParameter”的数据是字符串类型“string”。这与图6的第6行显示的说明相同。具体来说,第6行指出要一定满足的规范,即使输入数据的数据结构不同。
相比之下,第7和8行定义了代替如图6所示的ANY元素的特定元素名称和数据类型。第7行表示元素名称为“variableParameter1”的数据是字符串类型“string”。第8行表示元素名称为“variableParameter2”的数据是字符串类型“string”。具体来说,不由通用验证器420判断服务请求消息中的“fixedParameter”之后的每一个元素是否满足规范。然而,每一个元素是否专门满足规范由单个验证器450来进行判断。
如图8所示,根据本发明的实施例的数据结构对应于一个概念,不仅包括一个元素的数据类型,而且还包括由多个元素构成的数据中的元素的数量,每一个元素的标识名称,以及每一个元素的数据类型。根据实施例的服务提供设备30允许具有相同的标识名称的服务的如上文所描述的各种输入数据,并能够有选择地根据数据结构执行适当的操作。
图9显示了用于响应来自用户的输入生成单个定义数据的过程。输入接收器500向用户显示输入屏幕,并从用户那里接收项目名以及其数据类型的输入(S900)。输入接收器500也在输入屏幕上接收接口ID的输入(S910)。请参看图10,该图说明了用于定义应用程序表单数据的接口的输入屏幕,应用程序表单数据是有关接受提交的在工作流管理中所使用的应用程序表单的服务的输入数据。
图10显示了输入接收器500显示出的输入屏幕的示例。在此输入屏幕上的字段“FIELD NAME”处显示了已经输入的输入项的名称列表。与“COMMENT”相关联地显示了每一个输入项,用于描述输入项的角色,“TYPE”和“CONTAINER TYPE”表示项的数据类型,项的“ATTRIBUTE”,信息表示输入项是否要利用WSDL数据进行验证。作为示例,输入项“UserId”表示申请人的标识信息,其数据类型是正文类型。该项也要利用WSDL数据进行验证。
在用户利用指示设备等等选择输入项时,有关输入项的情况在屏幕下部显示的“FIELD PROPERTY”中变得可编辑。具体来说,例如,输入接收器500接收在FIELD PROPERTY中的字段“FIELDNAME”处输入的字符串作为输入项的项目名。此项目名被用作单个定义数据中的输入数据中包含的元素的元素名称。然后,输入接收器500接收在FIELD PROPERTY中的字段“TYPE”或“CONTAINER TYPE”处输入的数据类型作为输入项的数据类型。此数据类型被用作单个定义数据中的输入数据中包含的元素的属性值。
此外,输入接收器500还在屏幕的上部显示了接口ID输入字段。具体来说,输入接收器500接收在此接口ID输入字段中输入的字符串作为接口ID。此输入接口ID可以作为单个定义数据的命名空间的名称包括在单个定义数据中。或者,可以与单个定义数据分开独立地生成接口ID,并与单个定义数据相关联地向服务请求设备320-1到320-N输出。
请回头参看图9,定义数据生成器510然后根据已经输入的项目名和数据类型,生成单个定义数据(S920)。具体来说,定义数据生成器510首先从通用定义存储器400读出通用定义数据。然后,定义数据生成器510将通用定义数据中包含的ANY元素替换为以由输入接收器500接收到的项目名作为元素名称、并以由输入接收器500接收到的数据类型作为数据类型属性的元素。然后,定义数据生成器510使用替换后的定义数据作为新的单个定义数据。
定义数据管理器520与允许标识下一个替换后的元素的接口ID相关联地将生成的单个定义数据通知给服务请求设备320-1到320-N(S930)。此接口ID例如对应于图10中所显示的接口ID输入字段处的一个输入。被通知了接口ID的每一个服务请求设备320-1到320-N都可以包括根据对应于接口ID的单个定义数据生成的服务请求消息中的接口ID,并可以向服务提供设备30发送服务请求消息。定义数据管理器520与对应的接口ID相关联地将生成的单个定义数据存储在单个定义存储器430中(S940)。
图11显示了响应接收服务请求消息对服务进行处理的流程。接收器410从服务请求设备320-1接收服务请求消息,该服务请求消息包含输入数据和允许将输入数据的数据结构标识为元素的接口ID(S1100)。然后,通用验证器420验证服务请求消息的数据结构是否满足不管输入数据的数据结构如何都要共同满足的规范(S1110)。具体来说,通用验证器420从通用定义存储器400中读出通用定义数据,并判断接收到的服务请求消息中的每一个元素是否都匹配通用定义数据中的对应元素。例如,当输入数据之外的部分不符合规范时或当不包含接口ID时,通用验证器420判断不满足要共同满足的规范。
检索器440通过CPU的操作从单个定义存储器430中检索并读出对应于接收到的服务请求消息中包括的接口ID的单个定义数据(S1120)。如果没有检索这样的单个定义数据(S1125:NO),则服务处理器460返回一个错误通知,指出服务请求消息不满足规范(S1150)。如果检索到了单个定义数据(S1125:YES),则单个验证器450判断服务请求消息是否满足单个定义数据(S1130)。此验证是根据服务请求消息中的每一个元素是否都匹配单个定义数据中的对应元素来执行的。
如果服务请求消息中的每一个元素都匹配通用定义数据和单个定义数据中的对应元素(S1140:YES),那么,服务处理器460对对应于服务请求消息中包含的输入数据的数据结构的服务进行处理(S1160)。然后,服务处理器460返回对服务进行处理的处理结果(S1170)。另一方面,如果服务请求消息中有任何元素不匹配通用定义数据中的或单个定义数据中的对应元素的话(S1140:NO),则服务处理器460返回一个错误通知,指出服务请求消息不符合规范(S1150)。
图12显示了用作服务提供设备30的信息处理设备1200的硬件配置的示例。信息处理设备1200具有CPU(中央处理单元)外围部分,输入/输出(I/O)部分,以及旧式I/O部分。CPU外围部分包括CPU 1000、RAM(随机存取存储器)1020,以及图形控制器1075,它们通过主机控制器1082彼此连接在一起。I/O部分包括通信接口(I/F)1030、硬盘驱动器(HDD)1040,以及CD-ROM(压缩光盘-只读存储器)驱动器1060,它们通过I/O控制器1084连接到主机控制器1082。旧式I/O部分包括ROM 1010、软磁盘驱动器(FD驱动器)1050,以及I/O芯片1070,它们连接到I/O控制器1084。
CPU 1000和图形控制器1075以较高的传输速率访问RAM1020。主机控制器1082将RAM 1020、CPU 1000,以及图形控制器1075互连在一起。CPU 1000基于存储在ROM 1010和RAM1020中的程序而进行操作,并对每一部分进行控制。图形控制器1075在RAM 1020中提供的帧缓冲器中获取由CPU 1000等等所生成的图像数据,并使使显示设备1080在其上面显示对应于图像数据的图像。代替此配置,图形控制器1075可以包括帧缓冲器,用于在其中存储由CPU 1000等等生成的图像数据。
I/O控制器1084将主机控制器1082以及诸如通信接口1030、HDD 1040,以及CD-ROM驱动器1060之类的相对来说速度比较高的I/O设备互连在一起。通信接口1030通过网络与外部设备进行通信。HDD 1040存储供信息处理设备1200使用的程序和数据。CD-ROM驱动器1060从CD-ROM 1095读取程序或数据,并将程序或数据提供到RAM 1020或HDD 1040。
ROM 1010以及诸如FD驱动器1050和I/O芯片1070之类的相对来说速度比较低的I/O设备,连接到I/O控制器1084。ROM 1010存储在信息处理设备1200启动时由CPU 1000所执行的启动程序,以及依赖于信息处理设备1200的硬件的程序。FD驱动器1050从软盘1090读取程序或数据,并通过I/O芯片1070将程序或数据提供到RAM 1020或HDD 1040。I/O芯片1070通过,例如,并行端口、串行端口、键盘端口或鼠标端口等等,连接到软盘1090和各种输入/输出设备。
要提供到信息处理设备1200的程序存储在记录介质上,如软盘1090、CD-ROM 1095,或IC(集成电路)卡,并由用户提供到信息处理设备1200。通过I/O芯片1070和/或I/O控制器1084从记录介质中读出程序,并安装到信息处理设备1200中,由其执行。由于程序使信息处理设备1200等等执行的操作与参考图1到11描述的服务提供设备30执行的操作相同,因此,省略了其说明。
上文所描述的程序可以存储在外部记录介质上。记录介质不仅可以是软盘1090或CD-ROM 1095,而且还可以是诸如DVD(数字通用光盘)或PD(相位变化可重写光盘)之类的光记录介质,诸如MD(微型光盘)之类的磁光记录介质,磁带介质,以及诸如IC卡之类的半导体存储器。此外,程序还可以通过网络,使用连接到专用通信网或因特网的服务器系统中提供的诸如HDD或RAM之类的存储设备,提供到信息处理设备1200。
如上文所描述的,有关WSDL等等中的接口定义,根据实施例的服务提供设备30可以管理使用具有相同的标识名称的不同数据结构的输入数据的多个服务。这使得请求服务的用户利用接口定义更有效地开发应用程序。另一方面,提供服务的用户不必新添加服务提供设备30,并可以使用现有的服务提供设备30,无需进行任何修改,即使添加了新服务。此外,在开发定义数据时,还可以提供现有的程序语言中的相当于方法过载的功能。此外,有关添加新服务所需的新的单个定义数据的开发,可以通过提供允许为每一个输入项输入数据的接口定义单元310来改进用户的方便性。
尽管是使用本发明的实施例来对本发明进行描述的,但是,本发明的技术范围不仅限于上文的实施例中所描述的范围。对于那些本领域普通技术人员显而易见的是,可以向上文所描述的实施例中添加各种修改或改进。例如,服务提供设备30可以按照对服务进行处理之后消息返回处理的顺序使用通用定义数据和使用单个定义数据进行验证。具体来说,通用定义数据定义了不管通知消息的输出数据的数据结构如何而共同满足的规范。另一方面,单个定义数据定义了要被通知消息的输出数据的数据结构满足的规范。在对服务进行处理之后,服务提供设备30生成输出信息,以便允许标识服务的输出消息的数据结构的接口ID包含在输出消息中。然后,服务提供设备30判断输出消息是否满足通用定义数据,并判断输出消息是否满足对应于接口ID的单个定义数据。如果输出消息满足每一个规范,则将输出消息返回到服务请求设备。从所附的权利要求可以看出,这样的修改或改进也可以包括在本发明的技术范围内。

Claims (8)

1.一种用于接收服务请求消息并提供对应于所述接收到的服务请求消息中包含的输入数据的结构的服务的提供设备,包括:
通用定义存储器,用于预先存储通用定义数据,所述通用定义数据定义要被所述接收到的服务请求消息的数据结构共同满足的规范,而与所述消息中包含的所述输入数据的数据结构无关;
用于使用通信接口接收所述服务请求消息的接收器,所述服务请求消息包含所述输入数据和允许将所述输入数据的数据结构标识为元素的接口标识符;
通用验证器,用于通过中央处理单元的操作,根据所述接收到的服务请求消息中的每一个元素是否匹配所述通用定义数据中的所述对应元素,验证所述接收到的服务请求消息是否满足所述规范;
单个定义存储器,用于与所述接口标识符相关联地预先存储单个定义数据,所述单个定义数据定义由所述接口标识符所标识的数据结构的规范,所述规范将被匹配于所述通用定义数据中的ANY元素的输入数据满足,其中所述ANY元素匹配于不同数据结构中的任何输入数据;
检索器,用于通过所述中央处理单元的操作从所述单个定义存储器中检索和读出对应于所述接收到的服务请求消息中包含的所述接口标识符的单个定义数据;
单个验证器,用于通过所述中央处理单元的操作,确定如果所述服务请求消息中的每一个元素都匹配所述检索到的单个定义数据中的所述对应元素,则所述服务请求消息满足所述规范;以及
服务处理器,用于如果所述服务请求消息中的每一个元素都匹配所述通用定义数据和所述单个定义数据中的所述对应元素,则通过所述中央处理单元的操作,对对应于所述服务请求消息中包含的所述输入数据的数据结构的所述服务进行处理。
2.根据权利要求1所述的提供设备,其中,所述提供设备是用于提供Web服务的设备,以及
其中,所述通用定义存储器存储包括ANY数据类型的元素或可扩展标记语言XML的ANY元素,并且以Web服务描述语言WSDL编写的数据,作为所述通用定义数据,以及
其中,所述接收器以所述服务请求消息的形式,接收包括所述接口标识符作为元素的简单对象访问协议SOAP消息,以及
其中,所述通用验证器以WSDL验证操作的形式,判断所述服务请求消息中的每一个元素是否都匹配所述通用定义数据中的所述对应元素,以及
其中,所述单个定义存储器预先存储多段单个定义数据,其中这些多段单个定义数据通过将所述通用定义数据中包含的ANY数据类型的元素或ANY元素替换为匹配具有不同数据类型或不同标识信息的所述输入数据的多个元素而获得,以及
其中,所述单个验证器以所述WSDL验证操作的形式,判断所述服务请求消息中的每个元素是否都匹配所述单个定义数据中的所述对应元素。
3.根据权利要求2所述的提供设备,其中,所述接收器接收在所述SOAP消息中设置的命名空间的名称作为所述接口标识符。
4.根据权利要求3所述的提供设备,进一步包括:
输入接收器,用于对于所述输入数据中包括的每一个输入项,接收用户通过输入/输出设备输入的所述输入项的项目名和所述输入项的数据类型;
定义数据生成器,用于通过所述中央处理单元的操作,通过从所述通用定义存储器中读出所述通用定义数据,将所述通用定义数据中包含的所述ANY元素替换为以由所述输入接收器接收到的所述项目名作为元素名称、并以由所述输入接收器接收到的所述数据类型作为数据类型属性的元素,并添加所述替换后的元素的所述标识信息作为命名空间的所述名称,生成新的单个定义数据;以及
定义数据管理器,用于通过所述中央处理单元的操作,将所述生成的单个定义数据存储在所述单个定义存储器中,并用于通知请求设备,以便请求所述生成的单个定义数据的服务。
5.根据权利要求2所述的提供设备,进一步包括:
输入接收器,用于对于所述输入数据中包括的每一个输入项,接收用户通过输入/输出设备输入的所述输入项的项目名和所述输入项的数据类型;
定义数据生成器,用于通过所述中央处理单元的操作,通过从所述通用定义存储器中读出所述通用定义数据,将所述通用定义数据中包含的所述ANY元素替换为以由所述输入接收器接收到的所述项目名作为元素名称、并以由所述输入接收器接收到的所述数据类型作为数据类型属性的元素,生成新的单个定义数据;以及
定义数据管理器,用于通过所述中央处理单元的操作,与允许标识所述替换后的元素相关联地将所述生成的单个定义数据存储在所述单个定义存储器中,并用于通知请求设备,以便请求所述接口标识符的服务。
6.一种系统,包括:用于发送服务请求消息以便请求服务的请求设备;以及用于接收服务请求消息并提供对应于所述接收到的服务请求消息中包含的输入数据的结构的服务的提供设备,其中,所述提供设备包括:
通用定义存储器,用于预先存储通用定义数据,所述通用定义数据定义要被所述接收到的服务请求消息的数据结构共同满足的规范,而与所述消息中包含的所述输入数据的数据结构无关,
用于使用通信接口接收所述服务请求消息的接收器,所述服务请求消息包含所述输入数据和允许将所述输入数据的数据结构标识为元素的接口标识符,
通用验证器,用于通过中央处理单元的操作,根据所述接收到的服务请求消息中的每一个元素是否匹配所述通用定义数据中的所述对应元素,验证所述接收到的服务请求消息是否满足所述规范,
单个定义存储器,用于与所述接口标识符相关联地预先存储单个定义数据,所述单个定义数据定义由所述接口标识符所标识的数据结构的规范,所述规范将被匹配于所述通用定义数据中的ANY元素的所述输入数据满足,其中所述ANY元素匹配于不同数据结构中的任何输入数据,
检索器,用于通过所述中央处理单元的操作,从所述单个定义存储器中检索和读出对应于所述接收到的服务请求消息中包含的所述接口标识符的单个定义数据,
单个验证器,用于通过所述中央处理单元的操作,确定如果所述服务请求消息中的每一个元素都匹配所述检索到的单个定义数据中的所述对应元素,则所述服务请求消息满足所述规范,
服务处理器,用于如果所述服务请求消息中的每一个元素都匹配所述通用定义数据和所述单个定义数据中的所述对应元素,则通过所述中央处理单元的操作,对对应于所述服务请求消息中包含的所述输入数据的数据结构的所述服务进行处理,以及
定义数据管理器,用于通过所述中央处理单元的操作,将与允许标识所述单个定义数据中包含的所述输入数据的数据结构的所述接口标识符关联的每一个单个定义数据通知给所述请求设备,以及
其中,所述请求设备包括由所述定义数据管理器在根据对应于所述接口标识符的所述单个定义数据生成的所述服务请求消息中通知的所述接口标识符,并向所述提供设备发送所述服务请求消息。
7.一种程序产品,用于使信息处理设备用作用于接收服务请求消息并提供对应于所述接收到的服务请求消息中包含的输入数据的结构的服务,所述程序使所述信息处理设备用作:
通用定义存储器,用于预先存储通用定义数据,所述通用定义数据定义要被所述接收到的服务请求消息的数据结构共同满足的规范,而与所述消息中包含的所述输入数据的数据结构无关;
用于使用通信接口接收所述服务请求消息的接收器,所述服务请求消息包含所述输入数据和允许将所述输入数据的数据结构标识为元素的接口标识符;
通用验证器,用于通过中央处理单元的操作,根据所述接收到的服务请求消息中的每一个元素是否匹配所述通用定义数据中的所述对应元素,验证所述接收到的服务请求消息是否满足所述规范;
单个定义存储器,用于与所述接口标识符相关联地预先存储单个定义数据,所述单个定义数据定义由所述接口标识符所标识的数据结构的规范,所述规范将被匹配于所述通用定义数据中的ANY元素的所述输入数据满足,其中所述ANY元素匹配于不同数据结构中的任何输入数据;
检索器,用于通过所述中央处理单元的操作,从所述单个定义存储器中检索和读出对应于所述接收到的服务请求消息中包含的所述接口标识符的单个定义数据;
单个验证器,用于通过所述中央处理单元的操作,确定如果所述服务请求消息中的每一个元素都匹配所述检索到的单个定义数据中的所述对应元素,则所述服务请求消息满足所述规范;以及
服务处理器,用于如果所述服务请求消息中的每一个元素都匹配所述通用定义数据和所述单个定义数据中的所述对应元素,则通过所述中央处理单元的操作,对对应于所述服务请求消息中包含的所述输入数据的数据结构的所述服务进行处理。
8.一种用于接收服务请求消息,并提供对应于所述接收到的服务请求消息中包含的输入数据的结构的服务的方法,包括:
预先存储通用定义数据,所述通用定义数据定义要被所述接收到的服务请求消息的数据结构共同满足的规范,而与所述消息中包含的所述输入数据的数据结构无关;
使用通信接口接收所述服务请求消息,所述服务请求消息包含所述输入数据和允许将所述输入数据的数据结构标识为元素的接口标识符;
通过中央处理单元的操作,根据所述接收到的服务请求消息中的每一个元素是否匹配所述通用定义数据中的所述对应元素,验证所述接收到的服务请求消息是否满足所述规范;
与所述接口标识符相关联地预先存储单个定义数据,所述单个定义数据定义由所述接口标识符所标识的数据结构的规范,所述规范将被匹配于所述通用定义数据中的ANY元素的输入数据满足,其中所述ANY元素匹配于不同数据结构中的任何输入数据;
通过所述中央处理单元的操作,检索和读出对应于所述接收到的服务请求消息中包含的所述接口标识符的单个定义数据;
通过所述中央处理单元的操作,确定如果所述服务请求消息中的每一个元素都匹配所述检索到的单个定义数据中的所述对应元素,则所述服务请求消息满足所述规范;以及
如果所述服务请求消息中的每一个元素都匹配所述通用定义数据和所述单个定义数据中的所述对应元素,则通过所述中央处理单元的操作,对对应于所述服务请求消息中包含的所述输入数据的数据结构的所述服务进行处理。
CN2007101802508A 2006-10-17 2007-10-16 用于提供web服务的设备以及方法 Expired - Fee Related CN101166197B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2006283156 2006-10-17
JP2006283156A JP4285658B2 (ja) 2006-10-17 2006-10-17 ウェブ・サービスを提供する装置およびその方法
JP2006-283156 2006-10-17

Publications (2)

Publication Number Publication Date
CN101166197A true CN101166197A (zh) 2008-04-23
CN101166197B CN101166197B (zh) 2011-06-15

Family

ID=39304272

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2007101802508A Expired - Fee Related CN101166197B (zh) 2006-10-17 2007-10-16 用于提供web服务的设备以及方法

Country Status (3)

Country Link
US (1) US7664782B2 (zh)
JP (1) JP4285658B2 (zh)
CN (1) CN101166197B (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101848239A (zh) * 2010-05-11 2010-09-29 中国电子科技集团公司第二十八研究所 一种高时效性的分布式服务集成调用系统
CN102799629A (zh) * 2012-06-26 2012-11-28 天津大学 Wsdl文件质量保证系统及其实现方法
CN102917021A (zh) * 2012-09-19 2013-02-06 深圳市融创天下科技股份有限公司 一种基于Web服务的数据返回方法、系统和终端设备

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8428997B2 (en) * 2005-11-21 2013-04-23 Accenture Global Services Limited Customer profitability and value analysis system
US8557937B1 (en) 2012-05-09 2013-10-15 Sabic Innovative Plastics Ip B.V. Rubber composition, method for its formation, and automotive tire containing the composition
US8302017B2 (en) * 2008-03-05 2012-10-30 Microsoft Corporation Definition for service interface
JP5293036B2 (ja) * 2008-09-18 2013-09-18 富士ゼロックス株式会社 プログラム配信装置、画像処理装置、コンピュータシステム、及びプログラム
CN102457569B (zh) * 2010-10-25 2014-04-02 中国科学院声学研究所 一种面向物联网应用的Web服务的冗余检测方法及系统
US9064289B2 (en) * 2012-03-20 2015-06-23 Massachusetts Mutual Life Insurance Company Service mediation model
US9177005B2 (en) * 2013-01-30 2015-11-03 Oracle International Corporation Resolving in-memory foreign keys in transmitted data packets from single-parent hierarchies
JP6075210B2 (ja) * 2013-05-24 2017-02-08 三菱電機株式会社 通信データ構造圧縮装置、通信データ構造復元装置、通信データ圧縮復元システム、及び、通信データ圧縮復元方法
JP2019191931A (ja) * 2018-04-25 2019-10-31 富士通株式会社 情報処理システム、入力値検証支援プログラム、および入力値検証プログラム

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1152515C (zh) * 2001-06-21 2004-06-02 华为技术有限公司 基于策略的网络管理系统
JP2005174120A (ja) 2003-12-12 2005-06-30 Toshiba Corp Webサービス接続処理方法とシステム、およびプログラム
JP2005346408A (ja) 2004-06-03 2005-12-15 Hitachi Ltd ワークフローシステム間のwebサービス連携方法
JP2007011470A (ja) 2005-06-28 2007-01-18 Canon Inc サービス処理方法、装置及びプログラム

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101848239A (zh) * 2010-05-11 2010-09-29 中国电子科技集团公司第二十八研究所 一种高时效性的分布式服务集成调用系统
CN101848239B (zh) * 2010-05-11 2012-11-28 中国电子科技集团公司第二十八研究所 一种高时效性的分布式服务集成调用系统
CN102799629A (zh) * 2012-06-26 2012-11-28 天津大学 Wsdl文件质量保证系统及其实现方法
CN102799629B (zh) * 2012-06-26 2015-05-20 天津大学 Wsdl文件质量保证系统及其实现方法
CN102917021A (zh) * 2012-09-19 2013-02-06 深圳市融创天下科技股份有限公司 一种基于Web服务的数据返回方法、系统和终端设备

Also Published As

Publication number Publication date
US20080091729A1 (en) 2008-04-17
CN101166197B (zh) 2011-06-15
JP4285658B2 (ja) 2009-06-24
JP2008102637A (ja) 2008-05-01
US7664782B2 (en) 2010-02-16

Similar Documents

Publication Publication Date Title
CN101166197B (zh) 用于提供web服务的设备以及方法
US8943463B2 (en) Method and apparatus for representing and configuring flexible and extensible presentation patterns
EP2260413B1 (en) Web content management
RU2328034C2 (ru) Способ и система сопоставления операций семантическим меткам в электронных документах
US7441188B1 (en) Web construction framework presentation tier
US9584949B2 (en) Cloud based master data management architecture
US9128768B2 (en) Cloud based master data management
JP4414764B2 (ja) ベンチマークデータをビジネス・ソフトウェア・アプリケーションに取り入れるための方法、ソフトウェア、アプリケーションおよびシステム
US9229920B1 (en) Compound undo/redo manager for mixed model edits
JP2006190279A (ja) メタデータ駆動型ビジネス・ロジック(metadatadrivenbusinesslogic)処理のための方法および装置
US7890484B1 (en) Method and apparatus for selecting services based on behavior models
US9319480B2 (en) Managing digital media presented in online digital media store
US20080082629A1 (en) Enabling Users to Repeatedly Perform a Sequence of User Actions When Interacting With a Web Server
JP2005063404A (ja) Xmlドリブンアーキテクチャにおける情報処理方法及びプログラム
US7844748B2 (en) Method and apparatus for presenting entity not supporting UPnP as UPnP device or content
JP2005275488A (ja) 入力支援方法およびプログラム
JP5143980B2 (ja) 汎用の知的財産データオブジェクトについてのデータ交換ルールおよびフォーマットを規定する知的財産のプロトコル、およびそれらに関するシステムと、方法と、プログラム製品
KR100863121B1 (ko) 온톨로지검색시스템
JP2019095850A (ja) 文書処理装置およびプログラム
US20060026125A1 (en) Accessing entity data from a UDDI registry
JP4053920B2 (ja) 文書管理システム、文書生成方法、登録方法およびプログラム
JP5245573B2 (ja) 関連記事情報表示データ作成方法およびサーバ
Mishra et al. Web Application using Spring Boot
Suriadi et al. Layered identity infrastructure model for identity meta systems
Roberts et al. Designing Forms for Microsoft Office InfoPath and Forms Services 2007

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20110615

Termination date: 20151016

EXPY Termination of patent right or utility model