CN102053828A - 信息处理装置、信息处理系统以及信息处理方法 - Google Patents

信息处理装置、信息处理系统以及信息处理方法 Download PDF

Info

Publication number
CN102053828A
CN102053828A CN2010105264794A CN201010526479A CN102053828A CN 102053828 A CN102053828 A CN 102053828A CN 2010105264794 A CN2010105264794 A CN 2010105264794A CN 201010526479 A CN201010526479 A CN 201010526479A CN 102053828 A CN102053828 A CN 102053828A
Authority
CN
China
Prior art keywords
data
client
field engineering
data conversion
client field
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.)
Pending
Application number
CN2010105264794A
Other languages
English (en)
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.)
Toshiba Corp
Toshiba Digital Solutions Corp
Original Assignee
Toshiba Corp
Toshiba Solutions 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 Toshiba Corp, Toshiba Solutions Corp filed Critical Toshiba Corp
Publication of CN102053828A publication Critical patent/CN102053828A/zh
Pending legal-status Critical Current

Links

Images

Landscapes

  • Stored Programmes (AREA)
  • Computer And Data Communications (AREA)

Abstract

本发明涉及信息处理装置、信息处理系统以及信息处理方法。客户端确定部根据接收数据来确定客户端安装技术,接收数据包括:依赖于客户端的客户端安装技术的数据、用于指定数据的数据形式的数据形式信息、表示客户端安装技术的客户端安装技术识别符;接收数据变换管理部根据将客户端安装技术和接收数据变换委托目标关联起来的关联数据、和由客户端确定部所确定的客户端安装技术,来决定与客户端安装技术相对应的接收数据变换委托目标;接收数据变换部在符合由接收数据变换管理部所决定的接收数据变换委托目标时,根据接收数据的数据形式信息,将接收数据中含有的与客户端安装技术相对应的形式的数据,变换成在应用程序中使用的通用形式的数据。

Description

信息处理装置、信息处理系统以及信息处理方法
技术领域
本发明涉及用于提供通常在开发应用程序/软件时频繁需要的通用功能的信息处理装置、信息处理系统以及信息处理方法。
背景技术
在Web应用程序(Web application)的开发中,为了提高用户操作的画面的操作性,有时在客户端应用程序(client application)的安装中使用富客户端技术(rich client technology)。
在富客户端技术中存在例如在浏览器上运行的Ajax(Asynchronous JavaScript(注册商标)+XML)、嵌入到浏览器来实现的Flash(注册商标)、安装到客户端的计算机中的Windows(注册商标)等多个种类。在富客户端技术中,大多时候是用Java(注册商标)语言(Java EE)来生成服务器端侧。
并且,近年来的企业体系(enterprise system)中通过Java EE(Java Platform、Enterprise Edition)来安装服务器端应用程序的情况是很多的。
此外,还将在客户端使用了富客户端技术的Web应用程序称为RIA(Rich Internet Application),而用于联系RIA的客户端与服务器端之间的OSS(Open Source Software)或产品的库(library)(通信库)大多是开放的(release)。一般使用这样的库来开发RIA。
例如,Ajax中使用OSS的DWR,Windows应用程序中使用OSS的Apache Axis(注册商标),Flash中使用BlazeDS。
在多数的富客户端技术中,用Java语言生成服务器端侧。
但是,在客户端和服务器端之间的通信协议和收发的数据形式根据富客户端技术的不同而不同。例如,如果在客户端和服务器端之间的通信中使用的库不同,则可收发的数据形式也不同。
因此,即使利用例如Java EE这样统一的平台来开发服务器端的应用程序时,也需要使服务器端侧安装对应于各种客户端类别的应用程序,需要针对服务器端侧的应用程序进行依赖于各种富客户端技术的开发。
因此,产生了以下的问题。
第一,在采用新的富客户端技术来开发系统时,需要开发者学习使用该新的富客户端技术的服务器端应用程序的开发方法,开发工作量以及时间过多。
第二,即使是相同规格的RIA,若所采用的富客户端技术不同,也需要分别开发服务器端侧的应用程序,开发工作量以及时间过多。
第三,若对通过某个富客户端技术而开发的RIA追加客户端的变化(variation),则需要重新制作服务器端应用程序,开发工作量以及时间过多。
附图说明
图1是第一实施方式的信息处理系统的一个示例的框图。
图2是表示在第一实施方式中,通过客户端框架来生成向接收数据附加客户端安装技术识别符和数据形式而得的数据的状态的一个示例图。
图3是表示存储关联数据的存储装置的图。
图4是表示第一实施方式中基于服务器端框架变换请求的一个示例图。
图5是表示当将DWR用作与客户端安装技术“Ajax”相对应的通信库时,在服务器端侧能够使用的数据形式的一个示例图。
图6是表示当将Apach Axis用作与客户端安装技术“Windows应用程序”相对应的通信库时,在服务器端侧能够使用的数据形式的一个示例图。
图7是表示第一实施方式的客户机中的请求发送处理的一个示例的时序图。
图8是表示第一实施方式的通过服务器接收/变换请求的处理的一个示例的时序图。
图9是表示第一实施方式的针对从服务器返回到客户机的返回数据的处理的一个示例的时序图。
图10是表示第一实施方式的针对从服务器发送到客户机的例外数据的处理的一个示例的时序图。
图11是表示现有的服务器端侧的软件结构的一个示例的框图。
图12是表示第一实施方式的服务器端侧的软件结构的一个示例的框图。
图13是表示第一实施方式的服务器的硬件结构的一个示例的框图。
图14是表示第二实施方式的信息处理系统的一个示例的框图。
具体实施方式
在实施方式中,信息处理装置具备:客户端确定部、接收数据变换管理部、接收数据变换部。客户端确定部根据接收数据来确定客户端安装技术,所述接收数据包括:依赖于客户端的所述客户端安装技术的数据、用于指定所述数据的数据形式的数据形式信息、以及表示所述客户端安装技术的客户端安装技术识别符。接收数据变换管理部根据将所述客户端安装技术和接收数据变换委托目标关联起来的关联数据、和由所述客户端确定部所确定的所述客户端安装技术,来决定与所述客户端安装技术相对应的所述接收数据变换委托目标。接收数据变换部在符合由所述接收数据变换管理部所决定的所述接收数据变换委托目标时,根据所述接收数据的数据形式信息,将所述接收数据中含有的与所述客户端安装技术相对应的形式的数据,变换成在应用程序中使用的通用形式的数据。
以下,参照附图对各实施方式进行说明。此外,在以下各图中对相同或大致相同的要素附以相同的符号从而省略说明或简化说明,仅对不同部分进行详细说明。
(第一实施方式)
在本实施方式中,对用于吸收例如富客户端技术等这样的客户端安装技术(例如也可以是应用程序安装技术)的差异的服务器端侧的框架进行说明。
此外,在本实施方式中,以从客户机向服务器发送请求、在服务器中根据该请求实施处理的情况为例进行说明。本实施方式中,设为在请求中含有数据。但是,即使是从客户机向服务器不是发送请求而是发送其它各种数据或信息、由服务器根据在服务器接收到的数据或信息来实施处理的情况也是相同的。
图1是表示本实施方式的信息处理系统的一个示例的框图。
信息处理系统1具备:一台以上的客户机(客户端侧的信息处理装置)2、服务器(服务器端侧的信息处理装置)3。在信息处理系统1中,客户机2向服务器3发送请求或数据。服务器3根据该请求或数据来执行处理。经由网络连接客户机2和服务器3。
客户机2具备:客户端应用程序4A、客户端框架(client framework)5A、客户端侧的通信库6A、存储装置7。客户端应用程序4A、客户端框架5A、客户端侧的通信库6A访问存储装置7,并且执行各种处理。
服务器3具备:服务器端应用程序8、服务器端框架(server framework)9、服务器端侧的通信库10A、存储装置11。服务器端应用程序8、服务器端框架9、服务器端侧的通信库10A访问存储装置11,并且执行各种处理。
服务器端框架9执行用于吸收根据富客户端技术的不同而不同的客户端/服务器端之间的数据形式的差异的处理,并生成不依赖于富客户端技术的通用数据形式的数据。由此,能够开发不依赖于富客户端技术的服务器端应用程序8。
以下,对信息处理系统1的各构成要素进行说明。
在本实施方式的RIA中,服务器端应用程序8执行业务处理(实体的处理),客户端应用程序4A执行对该业务处理的输入或者处理结果的输出。
在服务器端应用程序8和服务器端侧的通信库10A之间具有服务器端框架9,由此在服务器端应用程序8中能够排除依赖于客户端安装技术的编码。
客户端应用程序4A是根据第一客户端安装技术而生成的应用程序。
客户端侧的通信库6A和服务器端侧的通信库10A是用于进行与第一客户端安装技术相对应的客户机2和服务器3之间的数据收发的库。例如,将Ajax的DWR、Windows应用程序的Apache Axis、Flash的BlazeDS等用作客户端侧的通信库6A和服务器端侧的通信库10A。
客户端应用程序4A、客户端框架5A、客户端侧的通信库6A对应于第一客户端安装技术。
客户端应用程序4B、客户端框架5B、客户端侧的通信库6B对应于第二客户端安装技术。
在本实施方式中,以根据第一客户端安装技术来发行请求的情况为例进行说明,但对于根据其它客户端安装技术来发行请求的情况也是同样的。
例如,作为客户端安装技术的类别,有Ajax、Windows应用程序、Flash、Flex等。
客户端框架5A是在客户机2中运行的框架。客户端框架5A提供客户端应用程序4A所需要的通用的功能。
在客户端应用程序4A向服务器3发送请求时执行客户端框架5A。客户端框架5A在从客户机2向服务器3发送的请求中附加客户端安装技术识别符和数据形式信息。
客户端安装技术识别符是用于确定发行了请求的客户端安装技术(例如Ajax、Windows、Flex等)的信息。
数据形式信息是表示例如字符串、列表、表格等各种数据形式的信息。
服务器端框架9是在服务器3中运行的框架。服务器端框架9提供服务器端应用程序8所需要的通用的功能。在本实施方式中,服务器端框架9接收从一个以上的客户机中任意一个(本实施方式中是客户机2)发送来的例如Ajax、Windows应用程序、Flex等形式不同的请求,将请求的数据变换成不依赖于客户端安装技术的形式的数据,并存储在通用接收数据存储部121中。
在本实施方式中,通用接收数据存储部121是含有通用形式的接收数据的数程体(object)。例如,变换后的通用形式的接收数据存储在存储装置11中。
服务器端应用程序8使用存储在通用接收数据存储部121中的通用形式的接收数据来执行业务处理。从服务器端应用程序8返还到客户机的数据存储在不依赖于客户端安装技术的通用返回数据存储部122中。
在本实施方式中,通用返回数据存储部122是含有通用形式的返回数据的数程体。例如,由服务器端应用程序8生成的通用返回数据存储在存储装置11中。
服务器端框架9将存储在该通用返回数据存储部122中的数据变换成与发行了请求的客户端安装技术相对应的形式,并返回给返回目标客户机2。
在服务器端应用程序8中发生了例外处理的时候(例如发生了异常的时候),例外数据存储在通用例外数据存储部123中。
在本实施方式中,通用例外数据存储部123是含有通用形式的例外数据的数程体。例如,由服务器端应用程序8生成的通用例外数据存储在存储装置11中。
服务器端框架9将存储在该通用例外数据存储部123中的数据变换成与发行了请求的客户端安装技术相对应的形式,并返回给返回目标客户机2。
在服务器端应用程序8中处理的数据以不依赖于客户端安装技术的形式存储在通用接收数据存储部121、通用返回数据存储部122、通用例外数据存储部123中。因此,服务器端应用程序8可以不依赖于客户端安装技术地通用地应用于各种客户端安装技术。
在本实施方式的服务器端框架9中,对第一客户端安装技术应用第一变换部14A,该第一变换部14A是关联数据(客户端技术变换部对应定义)131A、接收数据变换部132A、返回数据变换部133A、例外数据变换部134A的组合。
对第二客户端安装技术应用第二变换部14B,该第一变换部14B是关联数据131B、接收数据变换部132B、返回数据变换部133B、例外数据变换部134B的组合。
在使服务器端框架9对应于新的客户端安装技术时,追加新的变换部,该新的变换部是新的关联数据、接收数据变换部、返回数据变换部、例外数据变换部的组合。当变更了已有的客户端安装技术时,具备与该变更后的客户端安装技术相对应的变换后的变换部。
如上所述,在本实施方式中,根据客户端安装技术的类别,在服务器端框架9中具备关联数据、接收数据变换部、返回数据变换部、例外数据变换部。
服务器端框架9具有根据客户端安装技术的类别切换用于关联数据和数据变换的数据变换部的机构。由此,服务器端框架9能够灵活地应对今后的客户端安装技术的追加。
服务器端框架9具备:通用请求处理部15、客户端确定部16、接收数据变换管理部171、接收数据变换接口181、关联数据131A、131B、接收数据变换部132A、132B、通用接收数据存储部121。
此外,服务器端框架9还具备:通用返回数据存储部122、返回数据变换管理部172、返回数据变换接口182、返回数据变换部133A、133B。
进而,服务器端框架9还具备:通用例外数据存储部123、例外数据变换管理部173、例外数据变换接口183、例外数据变换部134A、134B。
通用请求处理部15处理在客户机2和服务器3之间收发的所有请求和数据。
当通过服务器端侧通信库10A从客户机2接收请求时,服务器端侧通信库10A将处理委托给通用请求处理部15。
本实施方式的服务器3具备分别对应于第一和第二客户端安装技术的服务器端侧通信库10A、10B。此外,服务器3进而还可以具备与其它客户端安装技术相对应的服务器端侧通信库。
通用请求处理部15使用客户端确定部16从请求中取得用于确定发送了该请求的客户端安装技术的客户端安装技术识别符。
通用请求处理部15将客户端安装技术识别符和接收到的请求转交给接收数据变换管理部171,并委托通用接收数据存储部121的生成处理。
于是,接收数据变换管理部171将接收到的请求经由接收数据变换接口181转交给接收数据变换部132A。
在接收数据变换部132A中根据接收到的请求生成通用接收数据存储部121。
通用请求处理部15将所生成的通用接收数据存储部121转交给服务器端应用程序8来委托执行业务处理。
此外,通用请求处理部15将作为服务器端应用程序8的处理结果而生成的返还的通用返回数据存储部122和客户端安装技术识别符转交给返回数据变换管理部172,并委托返回数据的生成处理,该处理将存储在通用返回数据存储部122中的通用形式的数据变换成与返回目标的客户端安装技术相对应的数据形式。
于是,返回数据变换管理部172将通用返回数据存储部122经由返回数据变换接口182转交给返回数据变换部133A。
在返回数据变换部133A中变换在通用返回数据存储部122中存储的通用形式的返回数据,并生成与返回目标的客户端安装技术相对应的数据形式的返回数据。
通用请求处理部15将变换后的返回数据返还给服务器端侧的通信库10A。
进而,通用请求处理部15在服务器端应用程序8的处理中产生了例外处理的时候将存储了所产生的例外数据的通用例外数据存储部123和客户端安装技术识别符转交给例外数据变换管理部173,并委托例外数据的生成处理,该处理将存储在通用例外数据存储部123中的通用形式的数据变换成与返回目标的客户端安装技术相对应的数据形式。
于是,例外数据变换管理部173将通用例外数据存储部123经由例外数据变换接口183转交给例外数据变换部134A。
在例外数据变换部134A中变换在通用例外数据存储部123中存储的通用形式的例外数据,并生成与返回目标的客户端安装技术相对应的数据形式的例外数据。
通用请求处理部15将该变换后的例外数据返还给服务器端侧的通信库10A。
客户端确定部16提取由客户端框架5A附加在请求中的客户端安装技术识别符,并确定客户端安装技术的类别。
接收数据变换管理部171受理对在请求中包含的数据进行变换并存储到通用接收数据存储部121的处理。
接收数据变换管理部171根据关联数据131A和由客户端确定部16提取出的客户端安装技术识别符,确定与该客户端安装技术识别符相对应的接收数据变换部132A,经由接收数据变换接口181将变换处理委托给该确定的接收数据变换部132A。
接收数据变换接口181向接收数据变换管理部171提供在各种接收数据变换部132A、132B中通用的接口。
接收数据变换管理部171通过使用接收数据变换接口181能够将处理执行委托给多个接收数据变换部中选择出的接收数据变换部132A。
接收数据变换部132A根据由客户端框架5A在请求中附加的数据形式信息,生成不依赖于客户端安装技术的通用形式数据,并将该通用形式的数据存储在通用接收数据存储部121中。
通用接收数据存储部121是存储不依赖于客户端安装技术的通用形式的接收数据的容器。在本实施方式中通用接收数据存储部121是数程体,其被存储在存储装置11中。
通用返回数据存储部122是存储从服务器端应用程序8返回到返回目标的客户机2的数据的容器。在本实施方式中通用返回数据存储部122是数程体,其被存储在存储装置11中。
返回数据变换管理部172受理以下处理:将由服务器端应用程序8生成返回的通用返回数据存储部122的数据变换成与返回目标的客户端安装技术相对应的形式。
返回数据变换管理部172根据关联数据131A和由客户端确定部16提取出的客户端安装技术识别符,确定与该客户端安装技术识别符相对应的返回数据变换部133A,经由返回数据变换接口182将变换处理委托给该确定的返回数据变换部133A。
返回数据变换接口182向返回数据变换管理部172提供在与各种客户端安装技术识别符相对应的返回数据变换部133A、133B中通用的接口。
返回数据变换管理部172通过使用返回数据变换接口182能够将处理执行委托给多个返回数据变换部中选择出的返回数据变换部133A。
返回数据变换部133A将通用返回数据存储部122的数据变换成依赖于发送了请求的客户端安装技术的形式。
通用例外数据存储部123是存储在服务器端应用程序8中发生的例外数据的容器。在本实施方式中通用例外数据存储部123是数程体,其被存储在存储装置11中。
例外数据变换管理部173受理以下处理:将由服务器端应用程序8生成的例外数据变换成与返回目标的客户端安装技术相对应的数据形式。
例外数据变换管理部173根据关联数据131A和由客户端确定部16提取出的客户端安装技术识别符,确定与该客户端安装技术识别符相对应的例外数据变换部134A,经由例外数据变换接口183将变换处理委托给该确定的例外数据变换部134A。
例外数据变换接口183向例外数据变换管理部173提供在与各种客户端安装技术识别符相对应的例外数据变换部134A、134B中通用的接口。
例外数据变换管理部173通过使用例外数据变换接口183能够将处理执行委托给多个例外数据变换部中选择出的例外数据变换部134A。
例外数据变换部134A将通用例外数据存储部123的数据变换成依赖于发送了请求的客户端安装技术的形式。
关联数据131A是定义了与第一客户端安装技术识别符相对应的接收数据变换部132A、返回数据变换部133A、例外数据变换部134A的数据。
关联数据131B是定义了与第二客户端安装技术识别符相对应的接收数据变换部132B、返回数据变换部133B、例外数据变换部134B的数据。
这些关联数据131A、131B配置在存储装置11内、可由服务器端框架9参照的路径上。
例如,在关联数据131A的文件名中包含有第一客户端安装技术识别符。当追加了新的客户端安装技术时,将在文件名中包含有新的客户端安装技术识别符的关联数据配置在路径上。由此,能够从新的客户端安装技术识别符中检索与该新的客户端安装技术识别符相对应的关联数据。进而,能够确定与新的客户端安装技术相对应的接收数据变换管理部、返回数据变换管理部、例外数据变换管理部。
本实施方式的服务器端框架9当接收包含有用于表示第一客户端安装技术的客户端安装技术识别符的请求(含有各种数据或者信息)时,通过客户端确定部16确定发行了请求的第一客户端安装技术(富客户端技术)。
接收数据变换管理部171根据与所确定的第一客户端安装技术相对应的关联数据131A生成与第一客户端安装技术相对应的接收数据变换部132A。
接收数据变换部132A将请求变换成不依赖于客户端安装技术的通用数据形式,并将通用数据形式的数据存储在通用接收数据存储部121中。
服务器端应用程序8根据在通用接收数据存储部121中存储的接收数据来执行处理。
当正常执行了服务器端应用程序8的处理时,服务器端应用程序8生成通用返回数据存储部122,将通用形式的返回数据存储在该通用返回数据存储部122中。
返回数据变换管理部172根据关联数据131A生成与第一客户端安装技术相对应的返回数据变换部133A。
返回数据变换部133A将存储在通用返回数据存储部122中的通用形式的返回数据变换成与第一客户端安装技术相对应的数据形式的返回数据。
然后,服务器端框架9使用服务器端侧通信库10A将与第一客户端安装技术相对应的数据形式的返回数据发送到发出了请求的客户机2。
另一方面,当服务器端应用程序8的处理没有正常结束时,服务器端应用程序8生成通用例外数据存储部123,并将通用形式的例外数据存储在该通用例外数据存储部123中。
例外数据变换管理部173根据关联数据131A生成与第一客户端安装技术相对应的例外数据变换部134A。
例外数据变换部134A将存储在通用例外数据存储部123中的通用形式的例外数据变换成与第一客户端安装技术相对应的数据形式的例外数据。
然后,服务器端框架9使用服务器端侧通信库10A将与第一客户端安装技术相对应的数据形式的例外数据发送到客户机2。
图2是表示本实施方式中由客户端框架5A生成附加了客户端安装技术识别符和数据形式信息而得的请求的状态的一个示例图。
该图2以客户端安装技术是Ajax的情况为例进行了图示,但也可以是其它客户端安装技术。
例如,设为客户端应用程序4A将请求发送到服务器3,其中该请求含有与字符串数据“××公司”、列表数据【AAA部件、BBB部件、CCC部件】、项目【编码、商品名、在库数量】有关的表格数据【A001、XXX电视、100】、【A002、YYY电视、200】。
此时,首先由客户端框架5A从客户端应用程序4A取得发送对象数据19。
然后,客户端框架5A对该发送对象数据19附加与客户端安装技术“Ajax”相对应的客户端安装技术识别符“ajax”,进而对于发送对象数据19,在字符串数据“××公司”中附加表示字符串的数据形式信息“String”、在列表数据【AAA部件、BBB部件、CCC部件】中附加表示列表的数据形式信息“List”、在表格数据【A001、XXX电视、100】、【A002、YYY电视、200】中附加表示是表格的数据形式信息“table”,并生成请求20。
通过客户端框架5A对发送对象数据19附加了客户端安装技术识别符“ajax”和数据形式信息“String”“List”“table”而得的请求20被发送到服务器3。
图3是表示存储关联数据131A、131B、131C的存储装置11的一个示例图。关于该图3,对与客户端安装技术“Ajax”相对应的关联数据131A进行说明,但与其它客户端安装技术相对应的关联数据131B、131C也具有同样的特征。
在关联数据131A的文件名中含有第一客户端安装技术“Ajax”的客户端安装技术识别符“ajax”。然后,该关联数据131A确定应该对含有该客户端安装技术识别符“ajax”的请求应用的接收数据变换部132A“AjaxRequestConverter”、返回数据变换部133A“AjaxResponseConverter”、例外数据变换部134A“AjaxExceptionConverter”。
接收数据变换管理部171检索在文件名中含有包含于请求中的客户端安装技术识别符“ajax”的关联数据131A,并识别由检索到的关联数据131A确定的接收数据变换部132A。
接收数据变换管理部172检索在文件名中含有返回目标的客户端应用程序4A的客户端安装技术识别符“ajax”的关联数据131A,并识别由检索到的关联数据131A确定的返回数据变换部133A。
例外数据变换管理部173检索在文件名中含有与返回目标的客户端应用程序4A对应的客户端安装技术识别符“ajax”的关联数据131A,并识别由检索到的关联数据131A确定的例外数据变换部134A。
图4是表示本发明实施方式的基于服务器端框架9变换接收数据的一个示例图。
服务器端侧通信库10A接收例如上述图2所示那样的附加了客户端安装技术识别符“ajax”和数据形式信息“String”“List”“table”而得的请求20(接收数据)。
接着,服务器端侧通信库10A将请求20变换成对应的例如Java形式的数据21。服务器端侧通信库10A将请求20的内容映射成正好对应的Java数据形式。
然后,服务器端框架9的接收数据变换部132A将从请求20变换成Java形式而得的数据21变换成由Java的服务器端应用程序8容易处理的通用形式的数据22。
图5是表示将DWR用作与客户端安装技术“Ajax”相对应的通信库10A时在服务器端侧能够使用的数据形式的一个示例图。
在使用了DWR的Ajax中,对于例如列表、表格等复杂数据,能够使用Java的List型、Map型来进行收发。
图6是表示当将Apach Axis用作与客户端安装技术“Windows应用程序”相对应的通信库10B时,在服务器端侧能够使用的数据形式的一个示例图。
使用了Apach Axis的Windows应用程序中,对于例如列表、表格等复杂数据,也能够使用Java的List型、Map型来进行收发。
以下,对信息处理系统1的动作进行说明。
图7是表示本实施方式的客户机2中的请求发送处理的一个示例的时序图。
该图7表示从客户机2向服务器3发送数据为止的处理。
客户端应用程序4A对客户端框架5A委托请求发送处理(S1)。
客户端框架5A对请求附加用于确定客户端安装技术的识别符(S2)。
客户端框架5A例如从画面取得对服务器3发送的数据19(S3)。
客户端框架5A对在发送对象数据19中包含的各个数据附加数据形式信息(S4)。
客户端框架5A执行客户端发送处理(S5),该处理用于使用客户端侧通信库6A向服务器3发送将客户端安装技术识别符、发送对象数据19、数据形式信息汇总而得的请求20。
在客户机2与服务器3之间,使用与客户端安装技术相对应的客户端侧通信库6A和服务器端侧通信库10A来进行经由了网络的请求20的通信(S6)。
图8是表示由本实施方式的服务器3对请求进行接收/变换的处理的一个示例的时序图。
服务器端侧通信库10A向通用请求处理部转让针对接收到的请求的处理(T1)。
通用请求处理部15委托客户端确定部16取得用于确定发送了请求的客户端安装技术的客户端安装技术识别符(T2)。
客户端确定部16从请求中提取附加在请求中的客户端安装技术识别符(T3),并将客户端安装技术识别符返回到通用请求处理部15。
通用请求处理部15将请求中包含的接收数据和客户端安装技术识别符转交给接收数据变换管理部171,并委托接收数据变换处理(T4)。
接收数据变换管理部171将客户端安装技术识别符作为关键字,从能够参照的路径上检索关联数据(客户端技术对应定义部)131A(T5)。
接收数据变换管理部171取得在检索到的关联数据131A中确定的接收数据变换部132A的名称(T6)。
接收数据变换管理部171根据所取得的接收数据变换部132A的名称生成接收数据变换部132A。例如根据接收数据变换部132A的名称生成接收数据变换数程体(T7)。
接收数据变换管理部171向接收数据变换接口181委托接收数据(T8)。
接收数据变换接口181向接收数据变换部132A委托接收数据(T9)。
接收数据变换部132A取得接收数据,并将该接收数据变换成不依赖于客户端安装技术的通用形式的数据。在数据变换时,接收数据变换部132A参照由客户端框架5A所附加的数据形式信息(T10)。
接收数据变换部132A生成通用接收数据存储部121作为存储变换了数据形式后的接收数据的容器(T11)。
接收数据变换部132A在通用接收数据存储部121中存储变换了数据形式后的接收数据(T12)。
通用请求处理部15将通用接收数据存储部121转交给服务器端应用程序8,并执行服务器端应用程序8(T13)。
服务器端应用程序8从通用接收数据存储部121取得接收数据(T14)。
服务器端应用程序8执行企业体系的业务处理(T15)。
图9是表示本实施方式的针对从服务器3返回到客户机2的返回数据的处理(响应处理)的一个示例的时序图。
服务器端应用程序8执行企业体系的业务处理(U1)。
服务器端应用程序8生成用于存储业务处理的结果的通用返回数据存储部122(U2)。
服务器端应用程序8在通用返回数据存储部122中存储业务处理的结果(U3)。
将存储了服务器端应用程序8的处理结果的通用返回数据存储部122从服务器端应用程序8转交给通用请求处理部15(U4)。
通用请求处理部15委托客户端确定部16取得客户端安装技术识别符(U5)。客户端确定部16将附加在接收到的请求中的客户端安装技术识别符返回给通用请求处理部15。
通用请求处理部15将通用返回数据存储部122和客户端安装技术识别符转交给返回数据变换管理部172,并委托返回数据变换处理(U6)。
返回数据变换管理部172将客户端安装技术识别符作为关键字,从能够参照的路径上检索关联数据(客户端技术对应定义部)131A(U7)。
返回数据变换管理部172取得在检索到的关联数据131A中定义的返回数据变换部133A的名称(U8)。
返回数据变换管理部172生成取得到的名称的返回数据变换部133A(U9)。
返回数据变换管理部172为了委托返回数据的变换,将通用返回数据存储部122转交给返回数据变换接口182(U10)。
返回数据变换接口182将通用返回数据存储部122转交给返回数据变换部133A(U11),并向返回数据变换部133A委托变换返回数据。
返回数据变换部133A从通用返回数据存储部122取得变换对象返回数据(U12)。
返回数据变换部133A将返回数据变换成能够返回到发出了请求的客户端安装技术的形式(U13)。
将变换成能够返回的形式的返回数据,从返回数据变换部133A经由返回数据变换接口182、返回数据变换管理部172返还到通用请求处理部15,进而从通用请求处理部15转交给服务器端侧通信库10A(U14)。
服务器端侧通信库10A将返回数据返还到与返回目标的客户端安装技术相对应的客户端侧通信库6A(U15)。
图10是表示本实施方式的针对从服务器3发送到客户机2的例外数据的处理的一个示例的时序图。
服务器端应用程序8执行企业体系的业务处理。在此发生例外事件(V1)。
服务器端应用程序8生成用于存储例外数据的通用例外数据存储部123(V2)。
将通用例外数据存储部123从服务器端应用程序8转交给通用请求处理部15(V3)。
受理了通用例外数据存储部123的通用请求处理部15开始针对例外数据的处理。通用例外数据存储部123例如相应于Java的例外类(class)。
通用请求处理部15委托客户端确定部16取得客户端安装技术识别符(V4)。客户端确定部16将接收到的请求中所附加的客户端安装技术识别符返回给通用请求处理部15。
通用请求处理部15将通用例外数据存储部123和客户端安装技术识别符转交给例外数据变换管理部173,委托例外数据变换处理(V5)。
例外数据变换管理部173使用客户端安装技术识别符作为检索关键字,从能够参照的路径上检索关联数据(客户端技术对应定义部)131A(V6)。
例外数据变换管理部173取得在检索到的关联数据131A中定义的例外数据变换部134A的名称(V7)。
例外数据变换管理部173生成取得到的名称的例外数据变换部134A(V8)。
例外数据变换管理部173为了委托例外数据的变换,将通用例外数据存储部123转交给例外数据变换接口183(V9)。
例外数据变换接口183将通用例外数据存储部123转交给例外数据变换部134A(V10),并向例外数据变换部134A委托变换例外数据。
例外数据变换部134A从通用例外数据存储部123取得变换对象例外数据(V11)。
例外数据变换部134A将例外数据变换成在例外返回目标的客户端安装技术中能够处理的形式(V12)。在发出了请求的客户端安装技术中能够处理的例外数据中,例如含有例外类名、例外消息、例外的堆栈跟踪(track trace)信息。
将变换成由发出了请求的客户端安装技术能够处理的形式的例外数据,从例外数据变换部134A经由例外数据变换接口183、例外数据变换管理部173返还到通用请求处理部15,进而从通用请求处理部15转交给服务器端侧通信库10A(V13)。
服务器端侧通信库10A将例外数据返还到与发出了请求的客户端安装技术相对应的客户端侧通信库6A(V14)。
以下,对服务器3中的现有软件结构与本实施方式的软件结构的不同点进行说明。
图11是表示现有的服务器3侧的软件结构的一个示例的框图。
在现有的服务器3侧,操作系统(operating system)23、中间件(middleware)24、与第一客户端安装技术“Ajax”相对应的应用程序8A、与第二客户端安装技术“Windows应用程序”相对应的应用程序8B运行。
如该图11所示,在现有技术中,即使使多个客户端安装技术“Ajax”“Windows应用程序”执行例如相同的业务处理,也需要按客户端安装技术“Ajax”“Windows应用程序”而具备应用程序8A、8B。
图12是表示本实施方式的服务器3侧的软件结构的一个示例的框图。
在服务器3侧,操作系统23、中间件24、服务器端框架9、服务器端应用程序8运行。
在本实施方式中,首先在服务器端框架9中处理从第一客户端安装技术“Ajax”发送来的请求、从第二客户端安装技术“Windows应用程序”发送来的请求。
服务器端框架9将接收到的请求变换成通用形式的数据,并转交给服务器端应用程序8。
进而,在本实施方式中,服务器端框架9从服务器端应用程序8受理通用形式的返回数据或者例外数据,并将该通用形式的返回数据或者例外数据变换成与返回目标的客户端安装技术相对应的形式,将变换后的数据返回给返回目标的客户端安装技术。
这样,本实施方式的服务器端框架9能够灵活地吸收客户端安装技术的差异。
图13是表示本实施方式的服务器3的硬件结构的一个示例的框图。此外,对于客户机2的硬件结构也能够使用与该图13的服务器3相同的结构。
服务器3是信息处理装置,例如具备至少一个的处理器25、存储装置11、总线26、通信装置27。
通信装置27从客户机2接收请求和其它各种数据,并存储在存储装置11中。
处理器25根据在存储装置11中存储的各种程序(例如操作系统23、中间件24、服务器端框架9、服务器端应用程序8)和请求或者数据,执行各种处理,并将执行结果存储在存储装置11中。
通信装置11将存储装置11中存储有的执行结果数据发送给客户机2。
存储装置11例如包括:高速缓冲存储器、主存储装置、可擦写存储装置等。
此外,还可以通过多个信息处理装置协同运行来实现客户机2和服务器3中的至少一方。
在以上说明过的本实施方式中,能够吸收客户端安装技术的差异,并提高应用程序的开发效率。
在本实施方式中,能够使用不依赖于客户端安装技术的服务器端应用程序8。在本实施方式中,仅通过生成进行业务处理核心的处理的一个服务器端应用程序8,就能够应对多种多样的客户端安装技术。
在本实施方式中,对不同的多个客户端安装技术开发通用的服务器端应用程序8即可,因此能够削减RIA的开发进度以及开发工作量。
在本实施方式的信息处理系统1中的应用程序开发中,能够削减富客户端技术的学习进度,并能够削减针对追加或变更富客户端技术的开发进度。
例如,当采用新的富客户端技术时,不需要开发者重新学习使用了该富客户端技术的服务器端应用程序8的开发方法,能够削减开发工作量和时间。
例如,即使在客户机2侧采用的富客户端技术不同的情况下,也不需要分别开发服务器3侧,能够削减开发劳动力和时间。
例如,对于通过某种富客户端技术而开发出来的RIA,即使进一步追加客户端安装技术的变化,也不需要重新制作服务器端应用程序8,能够削减开发工作量和时间。
本实施方式的信息处理系统1中的软件开发中,当增加能够应用的客户端安装技术(富客户端技术)时,具备与该追加的客户端安装技术相对应的接收数据变换部、返回数据变换部、例外数据变换部、关联数据的集合(set)即可,而不需要变更/追加服务器端应用程序8。由此,能够提高服务器端框架9的扩展性、维护性。
(第二实施方式)
本实施方式的信息处理系统中,管理用于唯一确定在客户端与服务器端之间通信的请求的信息(例如令牌(token))。
图14是表示本实施方式的信息处理系统的一个示例的框图。在该图14中,仅图示了说明令牌管理所必须的构成要素,而省略了其它构成要素。
在本实施方式的信息处理系统28中,从至少一个客户机向一个服务器30发送多个请求,由服务器30来处理多个请求。
此外,在该图14中,从多个客户机291~29n向服务器30发出了多个请求,但对于从一个客户机向服务器30发出了多个请求的情况也是一样的。
也可以通过多个信息处理装置协同运行来实现客户机291~29n与服务器30中的至少一方。
客户端框架311~31n主要在发送请求之前以及接收针对请求的返回数据或者例外数据之后运行。该客户端框架311~31n将用于唯一确定客户端与服务器端之间的通信(请求)的令牌和日志信息关联起来,存储在存储装置321~32n中。
服务器端框架33和服务器端应用程序34具有与上述第一实施方式的服务器端框架9和服务器端应用程序8一样的功能,解析请求,并生成返回数据(响应)。
服务器端框架33和服务器端应用程序34进一步将附加在请求中的令牌和日志信息关联起来,存储在存储装置11中。
这样,在本实施方式中,在客户端框架311~31n与服务器端框架33之间收发的请求以及数据中,附加用于能够追踪针对该请求和数据的处理的信息。
由此,在开发应用程序时以及运用应用程序时发生了问题的情况下,能够跟踪在客户机291~29n中存储的日志信息和在服务器30中存储的日志信息来确定处理,解析所发生的问题,能够提高解析效率。
在上述各实施方式中说明过的各构成要素可以自由组合,也可以自由分割。例如,可以将本实施方式的存储装置11分割成多个存储装置,多种请求以及处理结果等数据可以存储在多个存储装置的任意一个中。还可以经存储装置来进行各处理部之间的数据的交换。
以上说明了本发明的若干实施方式,但这些实施方式是作为示例而展示的,并不意味着限定发明的范围。能够通过其它多种方式来实施新的实施方式,能够在不脱离本发明精神的范围内进行各种省略、置换、变更。这些实施方式及其变形都包含在本发明的范围以及精神中,并且包含在权利要求的范围所记载的发明及其均等的范围中。

Claims (8)

1.一种信息处理装置,其特征在于,具备:
客户端确定部(16),其根据接收数据来确定客户端安装技术,所述接收数据包括:依赖于客户端的所述客户端安装技术的数据、用于指定所述数据的数据形式的数据形式信息、以及表示所述客户端安装技术的客户端安装技术识别符;
接收数据变换管理部(171),其根据将所述客户端安装技术和接收数据变换委托目标关联起来的关联数据(131A)、和由所述客户端确定部(16)所确定的所述客户端安装技术,来决定与所述客户端安装技术相对应的所述接收数据变换委托目标;和
接收数据变换部(132A),其在符合由所述接收数据变换管理部(171)所决定的所述接收数据变换委托目标时,根据所述接收数据的数据形式信息,将所述接收数据中含有的与所述客户端安装技术相对应的形式的数据,变换成在应用程序中使用的通用形式的数据。
2.根据权利要求1所述的信息处理装置,其特征在于,
所述信息处理装置还具备:接收数据变换接口(181),其对所述接收数据变换管理部(171)提供针对多个接收数据变换目标的通用接口。
3.根据权利要求1所述的信息处理装置,其特征在于,
所述关联数据进一步将所述客户端安装技术和返回数据变换委托目标关联起来,
所述信息处理装置还具备:
返回数据变换管理部(172),其在由所述应用程序生成了通用形式的返回数据时,根据所述关联数据(131A)和由所述客户端确定部(16)所确定的所述客户端安装技术,来决定与所述客户端安装技术相对应的所述返回数据变换委托目标;和
返回数据变换部(133A),其在符合由所述返回数据变换管理部(172)所决定的所述返回数据变换委托目标时,将所述通用形式的返回数据变换成与所述客户端安装技术相对应的形式的返回数据。
4.根据权利要求3所述的信息处理装置,其特征在于,
所述信息处理装置还具备:返回数据变换接口(182),其对所述返回数据变换管理部(172)提供针对多个返回数据变换委托目标的通用接口。
5.根据权利要求1所述的信息处理装置,其特征在于,
所述关联数据进一步将所述客户端安装技术和例外数据变换委托目标关联起来,
所述信息处理装置还具备:
例外数据变换管理部(173),当在所述应用程序中发生了例外处理时,该例外数据变换管理部(173)根据所述关联数据(131A)和由所述客户端确定部(16)所确定的所述客户端安装技术,来决定与所述客户端安装技术相对应的所述例外数据变换委托目标;和
例外数据变换部(134A),其在符合由所述例外数据变换管理部(173)所决定的所述例外数据变换委托目标时,将所述应用程序的通用形式的例外数据变换成与所述客户端安装技术相对应的形式的例外数据。
6.根据权利要求5所述的信息处理装置,其特征在于,
所述信息处理装置还具备:例外数据变换接口(183),其对所述例外数据变换管理部(173)提供针对多个例外数据变换委托目标的通用接口。
7.一种信息处理系统,其具备客户机(2)和服务器(3),其特征在于,
所述客户机(2)将处理对象数据发送给所述服务器(3),所述处理对象数据包括:依赖于所述客户机(2)的客户端安装技术的数据、用于指定所述数据的数据形式的数据形式信息、以及表示所述客户端安装技术的客户端安装技术识别符;
所述服务器(3)具备:
客户端确定部(16),其根据从所述客户机(2)接收到的所述处理对象数据来确定所述客户端安装技术;
数据变换管理部(171),其根据将所述客户端安装技术和数据变换委托目标关联起来的关联数据(131A)、和由所述客户端确定部(16)所确定的所述客户端安装技术,来决定与所述客户端安装技术相对应的所述数据变换委托目标;和
数据变换部(132A),其在符合由所述数据变换管理部(171)所决定的所述数据变换委托目标时,根据所述处理对象数据的数据形式信息,将所述处理对象数据中含有的与所述客户端安装技术相对应的形式的数据,变换成在应用程序(8)中使用的通用形式的数据。
8.一种信息处理方法,其是由具备处理器(25)和存储装置(11)的计算机(3)来执行的信息处理方法,其特征在于,包括:
所述处理器(25)根据在所述存储装置中存储的接收数据来确定客户端安装技术,所述接收数据包括:依赖于客户端的所述客户端安装技术的数据、用于指定所述数据的数据形式的数据形式信息、以及表示所述客户端安装技术的客户端安装技术识别符;
所述处理器(25)根据将所述客户端安装技术和接收数据变换委托目标关联起来的存储在所述存储装置(11)中的关联数据(131A)、和所确定的所述客户端安装技术,来决定与所述客户端安装技术相对应的所述接收数据变换委托目标;和
由所述处理器(25)实现的接收数据变换部(132A),在符合所决定的所述接收数据变换委托目标时,根据所述接收数据的数据形式信息,将所述接收数据中含有的与所述客户端安装技术相对应的形式的数据,变换成在应用程序中使用的通用形式的数据,并将所述通用形式的数据存储在所述存储装置11中。
CN2010105264794A 2009-10-30 2010-10-28 信息处理装置、信息处理系统以及信息处理方法 Pending CN102053828A (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2009251069A JP2011096112A (ja) 2009-10-30 2009-10-30 フレームワーク及び情報処理装置
JP2009-251069 2009-10-30

Publications (1)

Publication Number Publication Date
CN102053828A true CN102053828A (zh) 2011-05-11

Family

ID=43958186

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2010105264794A Pending CN102053828A (zh) 2009-10-30 2010-10-28 信息处理装置、信息处理系统以及信息处理方法

Country Status (2)

Country Link
JP (1) JP2011096112A (zh)
CN (1) CN102053828A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104216788A (zh) * 2014-09-04 2014-12-17 百度在线网络技术(北京)有限公司 功能处理的实现方法和装置

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002091860A (ja) * 2000-09-19 2002-03-29 Toshiba Corp プログラムを記録したコンピュータ読み取り可能な記録媒体及び計算機システム
JP2002342078A (ja) * 2001-05-17 2002-11-29 Hitachi Ltd プログラム開発システム及び方法
JP2004246401A (ja) * 2003-02-10 2004-09-02 Toshiba Solutions Corp Webアプリケーションサーバシステムとコンピュータプログラム
CN101084494A (zh) * 2004-08-31 2007-12-05 国际商业机器公司 用于数据集成系统的用户界面

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004110156A (ja) * 2002-09-13 2004-04-08 Toshiba Solutions Corp アプリケーションサーバシステム用プログラムとビジネスコンポーネントへのデータ受け渡し方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002091860A (ja) * 2000-09-19 2002-03-29 Toshiba Corp プログラムを記録したコンピュータ読み取り可能な記録媒体及び計算機システム
JP2002342078A (ja) * 2001-05-17 2002-11-29 Hitachi Ltd プログラム開発システム及び方法
JP2004246401A (ja) * 2003-02-10 2004-09-02 Toshiba Solutions Corp Webアプリケーションサーバシステムとコンピュータプログラム
CN101084494A (zh) * 2004-08-31 2007-12-05 国际商业机器公司 用于数据集成系统的用户界面

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
杉本信秀,今村大輔: "お客様の多様な用途に応えるコンポーネント群 ~JavaEEフレームワークStavewareオプションパック~", 《東芝ソリューション テクニカルニュース》, 15 December 2008 (2008-12-15), pages 8 - 9 *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104216788A (zh) * 2014-09-04 2014-12-17 百度在线网络技术(北京)有限公司 功能处理的实现方法和装置
CN104216788B (zh) * 2014-09-04 2018-09-07 百度在线网络技术(北京)有限公司 功能处理的实现方法和装置

Also Published As

Publication number Publication date
JP2011096112A (ja) 2011-05-12

Similar Documents

Publication Publication Date Title
US8504650B2 (en) Methods and systems for exchanging data between a command and control information system and an enterprise resource planning system
CN100596353C (zh) 提供日志服务的方法及系统
US8719338B2 (en) Servicing database operations using a messaging server
Rouached et al. RESTful sensor web enablement services for wireless sensor networks
US8595380B2 (en) Message bus based replication
US7657591B2 (en) Dispatching client requests to appropriate server-side methods
US8082296B2 (en) Bus system
Zimmermann et al. Interface representation patterns: crafting and consuming message-based remote APIs
US8966047B2 (en) Managing service specifications and the discovery of associated services
CN108446335A (zh) 基于数据库的异构系统数据抽取及统一对外数据交换方法
CN104199978A (zh) 基于NoSQL实现元数据缓存与分析的系统及方法
CN100534084C (zh) 远程xml数据更新方法以及系统
Zimmermann et al. Data-oriented interface responsibility patterns: Types of information holder resources
Khoo et al. Constraints on future analysis metadata systems in High Energy Physics
Kuzlu et al. An end to end data collection architecture for iot devices in smart cities
Colpaert Publishing transport data for maximum reuse
Lazidis et al. Open-source publish-subscribe systems: A comparative study
CN102053828A (zh) 信息处理装置、信息处理系统以及信息处理方法
US8549090B2 (en) Messaging tracking system and method
US20150317330A1 (en) Storing data to multiple storage location types in a distributed historization system
CN104508656B (zh) 在分布式计算系统中的自动化文档复制
Li An integration framework for information system based on web service
Garcia-Dominguez et al. Stress-testing centralised model stores
Castro et al. NetCDF based data archiving system applied to ITER Fast Plant System Control prototype
Harfoushi et al. An Insight to Middleware Technologies Used for Cloud Computing Frameworks: From the Perspective of Successful Enterprise Application Integration

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
WD01 Invention patent application deemed withdrawn after publication
WD01 Invention patent application deemed withdrawn after publication

Application publication date: 20110511