CN103237083A - 一种移动信息服务资源聚合系统及方法 - Google Patents
一种移动信息服务资源聚合系统及方法 Download PDFInfo
- Publication number
- CN103237083A CN103237083A CN2013101674793A CN201310167479A CN103237083A CN 103237083 A CN103237083 A CN 103237083A CN 2013101674793 A CN2013101674793 A CN 2013101674793A CN 201310167479 A CN201310167479 A CN 201310167479A CN 103237083 A CN103237083 A CN 103237083A
- Authority
- CN
- China
- Prior art keywords
- service
- aggregation
- subsystem
- application
- resources
- 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
Links
- 230000002776 aggregation Effects 0.000 title claims abstract description 168
- 238000004220 aggregation Methods 0.000 title claims abstract description 168
- 238000000034 method Methods 0.000 title claims abstract description 36
- 230000006870 function Effects 0.000 claims description 24
- 238000013515 script Methods 0.000 claims description 22
- 230000004931 aggregating effect Effects 0.000 claims description 10
- 238000004806 packaging method and process Methods 0.000 claims description 5
- 238000009877 rendering Methods 0.000 claims description 3
- 230000000977 initiatory effect Effects 0.000 claims description 2
- 238000011161 development Methods 0.000 description 13
- 238000004891 communication Methods 0.000 description 9
- 238000006243 chemical reaction Methods 0.000 description 7
- 238000010586 diagram Methods 0.000 description 6
- 230000008569 process Effects 0.000 description 6
- 238000012545 processing Methods 0.000 description 5
- 239000000243 solution Substances 0.000 description 5
- 238000009826 distribution Methods 0.000 description 4
- 238000004519 manufacturing process Methods 0.000 description 4
- 238000003860 storage Methods 0.000 description 4
- 230000006978 adaptation Effects 0.000 description 3
- 238000004458 analytical method Methods 0.000 description 3
- 238000013500 data storage Methods 0.000 description 3
- 239000000344 soap Substances 0.000 description 3
- UGFAIRIUMAVXCW-UHFFFAOYSA-N Carbon monoxide Chemical compound [O+]#[C-] UGFAIRIUMAVXCW-UHFFFAOYSA-N 0.000 description 2
- 241001275944 Misgurnus anguillicaudatus Species 0.000 description 2
- 229910002091 carbon monoxide Inorganic materials 0.000 description 2
- 239000003245 coal Substances 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 235000017166 Bambusa arundinacea Nutrition 0.000 description 1
- 235000017491 Bambusa tulda Nutrition 0.000 description 1
- 241001330002 Bambuseae Species 0.000 description 1
- 235000015334 Phyllostachys viridis Nutrition 0.000 description 1
- 230000003044 adaptive effect Effects 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 239000011425 bamboo Substances 0.000 description 1
- 235000014510 cooky Nutrition 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000009472 formulation Methods 0.000 description 1
- 231100001261 hazardous Toxicity 0.000 description 1
- 239000003999 initiator Substances 0.000 description 1
- 238000002347 injection Methods 0.000 description 1
- 239000007924 injection Substances 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 239000000203 mixture Substances 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 230000002085 persistent effect Effects 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
- 238000012800 visualization Methods 0.000 description 1
Images
Landscapes
- Information Transfer Between Computers (AREA)
Abstract
本发明公开了一种移动信息服务资源聚合系统,包括:业务生成子系统,用于生成超文本标记语言(HTML)5应用及业务聚合文件,将HTML5应用发给终端应用子系统,将业务聚合文件发给业务逻辑聚合子系统;业务逻辑聚合子系统,用于根据终端应用子系统发来的服务请求调用对应的业务生成子系统发来的业务聚合文件,根据所述业务聚合文件获取网络(Web)服务资源发送给终端应用子系统;终端应用子系统,用于运行业务生成子系统发来HTML5应用时,向业务逻辑聚合子系统发起服务请求,获取对应的Web服务资源。本发明还公开了一种移动信息服务资源聚合方法,采用本发明能减轻开发人员的工作量,保证移动应用在不同操作系统的一致性。
Description
技术领域
本发明涉及移动通信领域中的移动应用开发技术,尤其涉及一种移动信息服务资源聚合系统及方法。
背景技术
目前,随着移动互联网的快速发展,很大程度上改变人们使用互联网的方式,使用不同操作系统、不同技术的移动终端如雨后春笋般涌现。客户对移动应用的需求也越来越个性化。但是,对个性化定制的应用进行开发时,若要将同一个应用安装到不同操作系统的移动终端中,需要开发人员针对不同的操作系统,开发不同版本的移动应用,这样就会出现开发成本高,而且很难保持在不同平台上的一致性。
可见,现有技术无法提供快捷便利的移动应用开发平台,因此无法减轻开发人员的工作量,进而无法保证移动应用在不同操作系统的一致性。
发明内容
有鉴于此,本发明的目的在于提供一种移动信息服务资源聚合系统及方法,能。
为达到上述目的,本发明的技术方案是这样实现的:
本发明提供了一种移动信息服务资源聚合系统,该系统包括:业务生成子系统、业务逻辑聚合子系统和终端应用子系统;其中,
业务生成子系统,用于生成超文本标记语言(HTML,Hypertext MarkupLanguage)5应用及业务聚合文件,将HTML5应用发给终端应用子系统,将业务聚合文件发给业务逻辑聚合子系统;
业务逻辑聚合子系统,用于根据终端应用子系统发来的服务请求调用对应的业务生成子系统发来的业务聚合文件,根据所述业务聚合文件获取网络(Web)服务资源发送给终端应用子系统;
终端应用子系统,用于运行业务生成子系统发来HTML5应用时,向业务逻辑聚合子系统发起服务请求,获取对应的Web服务资源。
上述方案中,所述业务逻辑聚合子系统包括:业务逻辑脚本执行引擎模块和Web服务框架模块;其中,
业务逻辑脚本执行引擎模块,用于用于提取应用请求中的请求内容,根据所述请求内容确定所需获取的业务逻辑的名称或标识,根据所述业务逻辑的名称或标识调用对应的业务聚合文件,根据业务聚合文件控制Web服务框架模块按照顺序及进行Web服务资源的聚合;其中,所述业务聚合文件包括:业务逻辑的名称或标识、调用的网页Web服务资源和Web服务资源的执行顺序;
Web服务框架模块,用于根据业务逻辑脚本执行引擎模块的控制进行Web服务资源的聚合。
上述方案中,所述系统还包括:服务资源接入子系统,用于根据业务逻辑聚合子系统的控制,将获取到的Web服务资源经过适配后发送给业务逻辑聚合子系统;
相应的,所述业务逻辑聚合子系统,具体用于解析所述业务聚合文件获取Web服务资源,根据业务聚合文件中的Web服务资源的执行顺序,通过服务资源接入子系统获取Web服务资源。
上述方案中,所述服务资源接入子系统包括:资源适配器模块和对象扩展模块;其中,
资源适配器模块,用于将获取的Web资源进行适配后发送给对象扩展模块;
对象扩展模块,用于把资源适配器模块发来的各种资源封装成JavaScript对象。
上述方案中,所述终端应用子系统包括:HTML5运行模块和跨平台应用框架模块;其中,
HTML5运行模块,用于解析并运行HTML5应用,将所述解析后的HTML5应用发送给跨平台应用框架模块;
跨平台应用框架模块,用于基于所在移动终端的浏览器,渲染所述HTML5应用。
上述方案中,所述业务生成子系统包括:功能扩展模块、业务逻辑编写部署模块及HTML5应用发送模块;其中,
业务逻辑编写部署模块,用于从功能扩展模块获取资源,生成HTML5应用及业务聚合文件,将所述业务聚合文件发送给业务逻辑聚合子系统。将HTML5应用发送给HTML5应用发送模块;
HTML5应用发送模块,用于将业务逻辑编写部署模块发来的HTML5发送给终端应用子系统;
功能扩展模块,用于为业务逻辑编写部署模块提供资源。
本发明还提供了一种移动信息服务资源聚合方法,该方法包括:
生成超文本标记语言HTML5应用及其对应的业务聚合文件后,根据应用程序格式设置请求将HTML5应用发给移动终端;
当收到移动终端发来的应用请求时,根据所述应用请求调用对应的业务聚合文件;
根据所述业务聚合文件获取Web服务资源,向移动终端返回对应的Web服务资源。
上述方案中,所述根据所述应用请求调用对应的业务聚合文件,包括:提取应用请求中的请求内容,根据所述请求内容确定所需获取的业务逻辑的名称或标识,根据所述业务逻辑的名称或标识调用对应的业务聚合文件,根据业务聚合文件控制Web服务框架模块按照顺序及进行Web服务资源的聚合;
其中,所述业务聚合文件包括:业务逻辑的名称或标识、调用的网页Web服务资源和Web服务资源的执行顺序。
上述方案中,所述根据所述业务聚合文件获取Web服务资源,向移动终端返回对应的Web服务资源,包括:解析所述业务聚合文件获取Web服务资源,根据业务聚合文件中的Web服务资源的执行顺序,将Web服务资源发送给对应的移动终端。
本发明所提供的移动信息服务资源聚合系统及方法,能够生成HTML5应用及其对应的业务聚合文件后,根据应用程序格式设置请求将HTML5应用发给移动终端;当收到移动终端发来的应用请求时,根据所述应用请求调用对应的业务聚合文件;根据所述业务聚合文件获取Web服务资源,向移动终端返回对应的Web服务器资源;从而能够根据用于发来的应用程序格式设置请求将HTML5转换成对应的移动应用,使开发人员不需要同一个移动应用编写多次的重复工作,进一步的,能保证移动应用在不同操作系统的一致性。
附图说明
图1为本发明的移动信息服务资源聚合系统组成结构示意图;
图2为本发明的移动信息服务资源聚合方法流程示意图;
图3为本发明基于OSGI的聚合服务器的运行原理图;
图4为本发明聚合服务资源形式转化图;
图5为本发明业务生成子系统的工作示意图。
具体实施方式
本发明的基本思想是:生成HTML5应用及其对应的业务聚合文件后,根据应用程序格式设置请求将HTML5应用封装为选定格式的移动应用;当收到移动终端发来的应用请求时,根据所述应用请求调用对应的业务聚合文件;根据所述业务聚合文件获取Web服务资源,向移动终端返回对应的Web服务器资源。
下面结合附图及具体实施例对本发明再作进一步详细的说明。
如图1所示,本发明提供了一种使移动信息服务资源聚合系统,该系统包括:业务生成子系统11、业务逻辑聚合子系统12和终端应用子系统13;其中,
业务生成子系统11,用于生成HTML5应用及其对应的业务聚合文件,将所述HTML5应用发送给终端应用子系统13,将所述业务聚合文件发送给业务逻辑聚合子系统12;
业务逻辑聚合子系统12,用于接收业务生成子系统11发来的业务聚合文件,根据终端应用子系统13发来的服务请求调用对应的业务聚合文件,将根据所述业务聚合文件获取Web服务资源发送给终端应用子系统13;
终端应用子系统13,用于运行业务生成子系统11发来HTML5应用时,向业务逻辑聚合子系统12发起服务请求,并获取对应的Web服务资源。
所述业务生成子系统11,具体用于保存业务聚合文件;所述业务聚合文件包括:业务逻辑的名称或标识、调用的网页(Web)服务资源和Web服务资源的执行顺序,可以使用现有技术中JS(JavaScript)编写生成,比如:
其中,mashup.documentation表示接口mashup的基本功能;inputTypes表示该接口的输入参数类型,本示例接口无输入参数;outputType表示输出参数类型,本示例接口mashup输出参数类型为String;function mashup()表示mashup的接口的接入方法,方法体内调用自定义的文件资源对象File;var file=newFile(″www/hello.txt″)定义变量即可,同时还调用File对象的内置方法进行一些操作如write、close等。
所述终端应用子系统13,具体用于运行HTML5应用时,将所述业务请求发送给业务逻辑聚合子系统12;相应的,所述业务逻辑聚合子系统12,具体用于提取应用请求中的请求内容,根据所述请求内容确定所需获取的业务逻辑的名称或标识,根据所述业务逻辑的名称或标识调用对应的业务聚合文件。
所述系统还包括:服务资源接入子系统14,用于根据业务逻辑聚合子系统12的控制,将Web服务资源经过适配后发送给业务逻辑聚合子系统12;相应的,所述业务逻辑聚合子系统12,具体用于解析所述业务聚合文件获取Web服务资源,根据业务聚合文件中的Web服务资源的执行顺序,通过服务资源接入子系统14获取Web服务资源。
所述服务资源接入子系统14,具体用于获取现有技术中提供的Web页面资源对象、Web服务资源对象、Web种子资源对象、Web数据服务对象、微件(Widget)、电子邮件(Email)资源对象、即时通信(IM,Instant Messenger)资源对象等。
所述服务资源接入子系统14,具体用于与业务逻辑聚合子系统12实现业务数据交互,接入不同数据类型的服务资源,并对数据进行适配处理。
所述业务逻辑聚合子系统12,具体用于连接业务生成子系统11、业务逻辑聚合子系统12和终端应用子系统13,为资源聚合提供可靠的业务执行环境。执行业务逻辑,对接入的服务资源进行整合,以生成符合自定义需求聚合服务,并对外提供接口。
所述终端应用子系统13,具体用于使用业务生成子系统11发来的HTML5移动应用,并与业务逻辑聚合子系统12生成的聚合服务,为HTML5本地应用提供运行环境。
所述业务生成子系统11,分别连接终端应用子系统13和业务逻辑聚合子系统12,提供基于可视化的开发方式,生成可以直接运行于终端应用子系统的HTML5应用和用于业务逻辑聚合子系统的业务逻辑脚本,集成HTML5应用的页面编辑及一键转换为移动应用的功能、JS业务逻辑编辑及部署功能。
所述服务资源接入子系统14包括:资源适配器模块和对象扩展模块;其中,
资源适配器模块,用于对各种web资源提供适配功能,完成所需的基本资源操作,将获取的Web资源发送给对象扩展模块;
对象扩展模块,用于把资源适配器模块发来的各种资源封装成JavaScript对象。
所述业务逻辑聚合子系统12包括:
业务逻辑脚本执行引擎模块,用于解析执行业务聚合文件,按照业务逻辑顺序获取服务资源,经过处理后,向外公开服务资源,使用通信能力的服务资源与移动终端进行沟通;
Web服务框架,用于基于Apache Axis2框架,将其转化为osgi服务,主要功能将上述完成一定业务功能的业务逻辑发布为新的聚合服务,并以web服务和Restful服务的形式向外公开,供其他子系统调用。
所述终端应用子系统13包括:
HTML5的运行模块,用于解析并运行HTML5标签,其中不仅包含了HTML5本身的特性如LocalStorage,Websocket等,构成基本的HTML5的基础应用;并根据业务需求,扩展了一些其他的特性如FTP,扫描以及后台的聚合数据服务支持,包括JavaScript标准制定,标签解析及后台通信、数据存储的等。
跨平台移动应用模块,用于基于所在移动终端内嵌的浏览器即WebView来渲染解析HTML,基于Plugin的模式来封装调用本地API,用户可以扩展自定义Plugin功能。
本系统具有很好的兼容性,可以实现一次编写,多平台运行;同时具有很好的标准化,支持W3C标准。
所述业务生成子系统11包括:
微件(widget)功能扩展模块,用于编辑HTML5源码,集成多个第三方的widget,利用互联网资源,如Jquery、Dojo widgets,把所述多个widget进行组合,实现界面层的聚合;HTML5应用到移动应用程序的一键转换,把HTML5的应用打包生成移动本地应用,从而能直接在终端上直接安装运行。
业务逻辑编写及部署模块,用于编写基于JS的mashup聚合业务逻辑,并可以自动部署到关联的Mashup服务器上解析执行。从而实现从界面聚合到业务聚合,数据聚合统一的视图。提供给开发者统一的业务开发环境,降低开发成本,提高开发效率。
优选的,上述服务资源接入的资源主要包括如下资源类型:
Web页面资源对象,用于接入嵌在web页面的一些信息,比如某些大型网站上实时更新的一些有价值的信息;
Web服务资源对象,用于接入包括基于Soap形式的web服务和Restful形式的服务资源;
Web种子资源对象,用于接入包括ATOM(XML聚合格式)资源和RSS(Rich Site Summary,简易信息聚合,也叫聚合内容)资源;
Web数据服务对象,包括文件数据资源对象、本地数据表存储对象,分别用于接入文件资源,本地数据注册表;
Widget部件是基于HTML、Javascript、CSS的通用工具,如图表widget;
Email电子邮件资源对象,用于发送电子邮件;
IM即时通信资源对象,用于发送即时消息,包括MSN,ICQ等;
对上述资源,本发明经过资源接入模块用不同的资源适配器接入,并经JavaScript对象扩展模块封装成JS对象,具体包括:WSRequest对象接入web服务资源、Email对象接入Email资源、Feed接口接入web种子资源、File对象接入文件资源、HTTPClient对象接入HTTP资源、IM对象接入IM资源、Scraper对象接入网页资源等。
聚合业务逻辑层中,基于JS的业务逻辑脚本执行引擎对上述资源接入对象及一些系统方法进行解析执行,完成相应的原子功能;同时解析JS脚本的业务逻辑,同时完成相关的业务功能,同时根据业务逻辑脚本的描述,按要求生成相应的聚合服务,向外提供。
终端应用子系统中,HTML5应用为通用的HTML5程序加上一些个性化的定制需求,如扫描、FTP等。其中HTML5的典型特征如LocalStorage、WebSocket、本地数据库、Canvas使用浏览器内核进行解析,HTML5的一些扩展特性如扫描、FTP、Mashup数据支持等需要对不同的操作系统进行扩展,但对上层HTML5应用呈现的是相同的接口,从而实现HTML5应用的跨平台使用。
业务生成子系统支持图像拖拽和widget自定义扩展的生成环境,其中HTML5的开发环境集成了较为丰富的widget资源,包括图形widget、表格widget,这些部件可以通过图形化拖拽的反噬直接生成HTML代码,并支持一键转换成移动应用,如Android的APK应用。
同时,在业务生成子系统生成的业务逻辑脚本可以直接部署到业务逻辑聚合子系统使用,从而发布为聚合服务。而HTML5的应用又可以直接使用发布的服务,从而将展示层和业务逻辑集成在一个业务生成环境之中,提供给开发者统一的业务开发环境,降低开发成本,提高开发效率。业务生成子系统基于B/S架构,并支持多用户,允许每个用户在各自的工作空间进行独立操作。
本发明提出的使用聚合资源处理移动应用的方法,如图2所示,包括以下步骤:
步骤201:生成HTML5应用及其对应的业务聚合文件后,将HTML5应用发给移动终端。
这里,所述HTML5应用为根据客户需求开发得到的应用,可以包括:应用程序和应用标识等,其中所述HTML5的编写方法为现有技术,这里不做赘述;
所述应用程序格式设置请求为用户根据使用的移动终端的操作系统,向使用聚合资源处理移动应用的发出的请求,包括:目标格式以及移动终端的标识等内容;
所述将HTML5应用发给移动终端为将HTML5应用封装为移动应用发哦是能够给移动终端;所述封装为使用现有技术中的PhoneGap方法,将HTML5封装为选定格式;所述选定格式可以为Android操作系统的APK文件格式,或者为IOS操作系统的文件格式。
所述业务聚合文件包括:业务逻辑的名称或标识、调用的网页(Web)服务资源和Web服务资源的执行顺序,可以使用现有技术中JS(JavaScript)编写生成,比如:
其中,mashup.documentation表示接口mashup的基本功能;inputTypes表示该接口的输入参数类型,本示例接口无输入参数;outputType表示输出参数类型,本示例接口mashup输出参数类型为String;function mashup()表示mashup的接口的接入方法,方法体内调用自定义的文件资源对象File;var file=newFile(″www/hello.txt″)定义变量即可,同时还调用File对象的内置方法进行一些操作如write、close等。
所述Web服务资源可以包括现有技术中提供的Web页面资源对象、Web服务资源对象、Web种子资源对象、Web数据服务对象、微件(Widget)、电子邮件(Email)资源对象、即时通信(IM,Instant Messenger)资源对象等。
步骤202:当移动终端运行HTML5应用时,根据所述应用请求调用对应的业务聚合文件。
这里,所述应用请求包括:移动终端的标识、应用标识以及请求内容等;
其中,所述移动终端的标识可以为移动终端的国际移动用户识别码(IMSI,International Mobile Subscriber Identification Number);所述请求内容为:所需获取的业务逻辑的名称或标识;
所述根据所述应用请求调用对应的业务聚合文件为:提取应用请求中的请求内容,根据所述请求内容确定所需获取的业务逻辑的名称或标识,根据所述业务逻辑的名称或标识调用对应的业务聚合文件。
步骤203:根据所述业务聚合文件获取Web服务资源,向移动终端返回对应的Web服务资源。
具体的,解析所述业务聚合文件获取Web服务资源,根据业务聚合文件中的Web服务资源的执行顺序,将Web服务资源发送给对应的移动终端。
具体聚合服务使用场景,可为以下几个步骤:
客户端运行HTML5应用,发送服务请求,如调用mashup聚合服务接口请求聚合后的数据,并要显示在HTML5页面上;
客户端应用框架首先把服务请求映射到自定义的HTML5标签解析器上,执行对应的解析代码,将请求消息发送至业务逻辑聚合子系统;
业务逻辑聚合子系统接收到请求消息之后,经桥接Servlet转送至相应的模块调用特定的聚合服务;业务逻辑执行引擎解析执行特定的业务逻辑脚本。按照业务逻辑描述的顺序,调用其他的聚合服务或者其他服务资源如数据库资源,并生成一个组合服务结果,返回给调用客户端。
服务资源适配模块被调用后,根据相关的输入参数调用相关的服务资源,如从文件中取得数据,并把取得的结果供组合服务使用。
经过如上所述的几个步骤,一个通过聚合平台使用聚合服务的请求过程就完成了,用户就可以再客户端看到经客户端请求的聚合服务的结果了。
如上所述,编写的业务逻辑脚本需要执行引擎来解析执行该脚本,图4是本发明业务逻辑聚合子系统的运行原理图。本发明的业务逻辑聚合子系统和编辑环境是基于面向Java的动态模型系统(OSGI,Open Service Gateway Initiative)架构的,如图4所示,是本发明的聚合服务器的运行原理和体系架构。总体来说,该聚合服务器是一个基于SOA的组件框架,其核心功能是处理SOA请求的各种服务。其工作原理可以描述为:
业务逻辑聚合子系统对外呈现到是一个桥接servlet,所有的对业务逻辑聚合子系统的外部请求都会被定向到这个桥接servlet上。Equinox的OSGI框架的桥接Servlet是一种把web应用服务器的底层servlet支持和运行在web应用里的OSGI框架联系起来的一种机制。为实现这种机制,把一系列URL地址放置在web应用URL空间里,并启动Equinox框架来支持处理把HTTP请求转化为这些URL。在这种方式中,桥接servlet既是框架启动入口,也是HTTP请求路由器。
用户启动服务器时,会启动一个内置Tomcat容器,tomcat通过读取web.xml,会启动桥接servlet,该桥接servlet初始化整个OSGI运行时,它会加载服务器的osgi组件,同时把Axis2作为一个osgi组件启动,并初始化UI框架。所有的请求都会通过桥接servlet,桥接servlet判断请求的类型,如果是web服务的请求,则把这个请求重定向至axis2组件,如果是ui请求,则把请求重定向至ui组件框架。
具体地,服务器框架启动顺序可以描述为:
启动框架内置tomcat服务器。具体通过Bootstrap引导程序,该Bootstrap中设置了classLoader以及通过反射调用了框架Main.java类中的方法,启动tomcat;
Main.java类对程序的传入参数进行了处理,对系统属性进行设置。相当于是程序整体流程进行的调度器。首先,使用ant工具将程序的相应jar包放到distribution的目录之下,然后调用tomcat;
tomcatServer.java类,该程序主要是对tomcat包的集成,启动tomcat,并做一系列初始化的过程,包括对桥接servlet所在的bridge包进行部署,启动桥接servlet;
桥接servlet调用osgi框架启动器osgiFrameworklaucher,初始化整个OSGI运行时。启动器通过组建部署器加载osgi组件,同时把Axis2作为一个osgi组件启动,并初始化用户界面(UI,User Interface)框架。
所有请求都会通过桥接servlet,桥接servlet判断请求的类型,如果是web服务的请求,则把这个请求重定向至axis2组件,如果是ui请求,则把请求重定向至ui组件框架。
本发明聚合服务器核心框架同样包括一些核心服务,这些服务是实现其他组件的基础。服务器框架把每个核心服务暴露为OSGI的服务,以便其他的组件能够通过OSGI框架提供的依赖注入方式发现这些服务并使用它们。下面简单介绍核心服务的实现。
服务执行:本发明使用Apache Axis2实现web服务,并把Axis2所有核心功能暴露为OSGI服务。本发明框架框架运行时会检测服务并部署到运行在框架运行时Axis2实例。
数据存储:本发明的数据存储是通过一个有数据库支持的注册表是实现的,它允许用户存储任何符合一定结构的内容,向外暴露了存储操作set(..)和取值操作get(..)。
本发明使用多种服务资源,如图4所示,不同类型的资源可以用在不同的聚合阶段,具体可以描述为:
Web页面资源、web服务资源、web种子资源、web数据服务可以作为业务聚合的输入,通过业务逻辑对这些资源的整合以及其他资源的利用,可以生成多种不同类型的资源供HTML5客户端使用,具体包括:Widget部件资源、Email电子邮件资源、IM及时通信资源、web服务资源、web种子资源、文件及数据资源、HTML资源,其中输出的资源又都统一已Web服务的方式呈现给客户端,供客户端使用。
总体来说,输入的资源可以概括为:
Web页面资源指嵌在web页面的一些信息,比如某些大型网站上实时更新的一些有价值的信息,可以采用Scraper对象抓取。Scraper对象允许从HTML页面中获取数据并以XML形式呈现,这提供了一种获取目前还没有xml或web服务形式数据的方法。
web服务资源包括基于Soap形式的web服务和Restful形式的服务资源,可以通过WSRequest对象或HTTPClient对象调用获取。WSRequest对象通过格式化的XML消息调用接口,并从返回结果中解析数据;HTTPClient对象可以通过特定方法对特定URL执行HTTP GET,POST,PUT,DELETE操作,而且可以配置属性,如HTTP herader,cookies等。
web种子资源包括ATOM(XML聚合格式)资源和RSS(Rich Site Summary,简易信息聚合,也叫聚合内容)资源,可以通过Feed对象调用获取。Feed对象能识别种子资源类型并相应地进行处理。
Web数据服务包括文件数据、本地数据表存储以及和本发明共生的数据服务器提供的数据服务,可以通过File对象或Registry对象获取。File对象提供基本读/写操作支持,针对聚合服务的操作文件夹;Registry对象提供简单的存储/读取操作,针对系统核心注册表,如上述提到的数据存储部分。
经业务逻辑处理输出的资源类型可以概括为:
Widget部件是基于HTML、Javascript、CSS的通用工具,如图表widget,可以呈现输入部分整合的服务资源,并可以直接输出到客户端进行使用。
Email电子邮件资源是互联网上常用的通信方式,可以通过Email对象来调用实现。Email对象允许用户从聚合服务中发送邮件,可以把一些特定事件通知给用户,同时也可以作为用户和mashup聚合服务的桥梁。
IM即时通信资源同样是互联网上常用的通信方式,相比Email资源,IM即时通信实时性更强,可以通过IM对象调用。IM对象允许用户从聚合服务中发送即时消息,可以把一些特定事件通知给用户,同时也可以作为用户和mashup聚合服务的桥梁。IM对象支持常用的IM通讯工具如MSN、ICQ。
Web服务资源包括基于Soap形式的web服务和Restful形式的服务资源,可以通过WSRequest对象或HTTPClient对象调用获取。可以把从输入资源得到的数据进行聚合之后以服务的形式呈现给用户,方便用户使用。
Web种子资源包括ATOM(XML聚合格式)资源和RSS(Rich Site Summary,简易信息聚合,也叫聚合内容)资源,可以通过Feed对象调用获取。允许用户把获得资源经过聚合之后以web种子资源的形式对外发布,方便其他用户使用。
文件/数据资源包括文件数据、本地数据表存储可以通过File对象或Registry对象获取。允许用户从聚合服务中生成文件和本地数据,持久化数据,并可以提供给其他服务或用户使用。
HTML资源指的是HTML格式的数据资源,允许用户直接使用HTML资源进行页面展示,呈现获取的数据。
如上所述,为了生成聚合服务和终端应用,需要编辑相关代码和脚本,如图5所示,是本发明的业务编辑环境的工作原理和流程图。本发明的Mashup业务编辑环境是一个支持自定义扩展的编辑环境,其中集成了较为丰富的widget资源,包括图形widget、表格widget,这些部件可以通过简单配置直接使用在HTML5应用中,并支持一键转换工具,转换成移动应用,如Android的APK应用。同时,在编辑环境编写的JS逻辑脚本可以直接部署到Mashup后台服务器,从而发布为聚合服务。而HTML5的应用又可以直接使用发布的服务,从而将展示层和业务逻辑集成在一个编辑环境之中。
具体地,如图5所示,本发明的业务编辑环境主要包括HTML编辑器、CSS编辑器、JS编辑器以及HTML/JS/CSS到移动应用的转化框架、JS业务逻辑脚本到聚合服务的部署框架,还包括HTML页面在不同应用终端的预览功能。
HTML编辑器是一个支持可视化拖拽的编辑器,支持代码自动生成,一些常用的widget部件如dojo部件、jquery部件、yui部件已经集成至编辑器,并可以通过拖拽直接在页面上生成HTML代码。
CSS编辑器提供基本的CSS属性,方便用户编辑CSS代码并生成CSS文件供HTML编辑器使用。
JavaScript编辑器提供基本的文本编辑环境,并对语言进行简单验证,可以同时编辑Mashup逻辑脚本文件。
HTML/JS/CSS编辑完成之后,可以在预览工具里面预览页面效果,并通过转换工具转化成目标操作系统上的移动应用。转化工具会打包编辑好的代码,并加上适配目标操作系统的框架代码,生成移动应用供用户下载使用。
基于JS的Mashup逻辑脚本文件编辑完成后,可以通过聚合服务部署功能,部署在聚合服务器上,生成聚合服务,供用户使用。
实施例、以实际煤矿企业为例,在煤矿系统的实际应用中,实现将产区产量数据统计,产区危险气体安全报警,矿井之下的人员分布,各方工作人员的实时沟通和交流等功能并将其在移动终端上显示的原型系统,该系统使用了数据服务资源、文件资源、Email资源、MSN即时通信同源、Web服务资源,同时还使用了图形widget、表格widget等进行页面展示,并经过转换为Android本地应用在Android终端上进行展示,具体包括下列步骤:
业务聚合逻辑及服务资源接入部分:
登陆业务生成子系统,打开业务逻辑编辑器,定义聚合服务接口名称、方法名称、输入输出参数等信息;
使用WSRequest接口调用已经写好的获取底层数据资源的数据服务,包括产量数据、危险气体一氧化碳的浓度数据、人员分布数据等;
对获取的数据进行聚合分析,把相关数据合并,并检测是否有一氧化碳浓度超过0.5%的数据,若有的话,使用Email对象和MSN对象资源发送Email和即时消息给相关管理人员,最后把经过处理的数据作为服务资源的结果返回;
保存业务逻辑,部署到后台Mashup服务器,发布为web服务,包括SOAP-WS和Restful风格的服务。
使用HTML编辑器,使用拖拽方法载入自定义的Highchart图形widget及表格widget,并调整界面;
调用生成的web服务,启动并执行业务逻辑,得到需要的数据,并把得到的数据资源与界面融合起来,在界面上显示;
业务开发完成后,使用业务生成子系统的预览功能,预览运行时的效果;
选择需要转换的文件,把预览的HTML5应用转换为Android的移动应用;
下载生成的android应用,并在终端上安装运行。在终端上可以看到产区产量数据统计,产区危险气体安全报警,矿井之下的人员分布等信息,并与各方工作人员的实时沟通和交流。
以上所述,仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。
Claims (9)
1.一种移动信息服务资源聚合系统,其特征在于,该系统包括:业务生成子系统、业务逻辑聚合子系统和终端应用子系统;其中,
业务生成子系统,用于生成超文本标记语言HTML5应用及业务聚合文件,将HTML5应用发给终端应用子系统,将业务聚合文件发给业务逻辑聚合子系统;
业务逻辑聚合子系统,用于根据终端应用子系统发来的服务请求调用对应的业务生成子系统发来的业务聚合文件,根据所述业务聚合文件获取网络Web服务资源发送给终端应用子系统;
终端应用子系统,用于运行业务生成子系统发来HTML5应用时,向业务逻辑聚合子系统发起服务请求,获取对应的Web服务资源。
2.根据权利要求1所述的系统,其特征在于,所述业务逻辑聚合子系统包括:业务逻辑脚本执行引擎模块和Web服务框架模块;其中,
业务逻辑脚本执行引擎模块,用于用于提取应用请求中的请求内容,根据所述请求内容确定所需获取的业务逻辑的名称或标识,根据所述业务逻辑的名称或标识调用对应的业务聚合文件,根据业务聚合文件控制Web服务框架模块按照顺序及进行Web服务资源的聚合;其中,所述业务聚合文件包括:业务逻辑的名称或标识、调用的网页Web服务资源和Web服务资源的执行顺序;
Web服务框架模块,用于根据业务逻辑脚本执行引擎模块的控制进行Web服务资源的聚合。
3.根据权利要求1或2所述的系统,其特征在于,所述系统还包括:服务资源接入子系统,用于根据业务逻辑聚合子系统的控制,将获取到的Web服务资源经过适配后发送给业务逻辑聚合子系统;
相应的,所述业务逻辑聚合子系统,具体用于解析所述业务聚合文件获取Web服务资源,根据业务聚合文件中的Web服务资源的执行顺序,通过服务资源接入子系统获取Web服务资源。
4.根据权利要求3所述的系统,其特征在于,所述服务资源接入子系统包括:资源适配器模块和对象扩展模块;其中,
资源适配器模块,用于将获取的Web资源进行适配后发送给对象扩展模块;
对象扩展模块,用于把资源适配器模块发来的各种资源封装成JavaScript对象。
5.根据权利要求1或4所述的系统,其特征在于,所述终端应用子系统包括:HTML5运行模块和跨平台应用框架模块;其中,
HTML5运行模块,用于解析并运行HTML5应用,将所述解析后的HTML5应用发送给跨平台应用框架模块;
跨平台应用框架模块,用于基于所在移动终端的浏览器,渲染所述HTML5应用。
6.根据权利要求1所述的系统,其特征在于,所述业务生成子系统包括:功能扩展模块、业务逻辑编写部署模块及HTML5应用发送模块;其中,
业务逻辑编写部署模块,用于从功能扩展模块获取资源,生成HTML5应用及业务聚合文件,将所述业务聚合文件发送给业务逻辑聚合子系统。将HTML5应用发送给HTML5应用发送模块;
HTML5应用发送模块,用于将业务逻辑编写部署模块发来的HTML5发送给终端应用子系统;
功能扩展模块,用于为业务逻辑编写部署模块提供资源。
7.一种移动信息服务资源聚合方法,其特征在于,该方法包括:
生成超文本标记语言HTML5应用及其对应的业务聚合文件后,根据应用程序格式设置请求将HTML5应用发给移动终端;
当收到移动终端发来的应用请求时,根据所述应用请求调用对应的业务聚合文件;
根据所述业务聚合文件获取Web服务资源,向移动终端返回对应的Web服务资源。
8.根据权利要求7所述的方法,其特征在于,所述根据所述应用请求调用对应的业务聚合文件,包括:提取应用请求中的请求内容,根据所述请求内容确定所需获取的业务逻辑的名称或标识,根据所述业务逻辑的名称或标识调用对应的业务聚合文件,根据业务聚合文件控制Web服务框架模块按照顺序及进行Web服务资源的聚合;
其中,所述业务聚合文件包括:业务逻辑的名称或标识、调用的网页Web服务资源和Web服务资源的执行顺序。
9.根据权利要求8所述的方法,其特征中在于,所述根据所述业务聚合文件获取Web服务资源,向移动终端返回对应的Web服务资源,包括:解析所述业务聚合文件获取Web服务资源,根据业务聚合文件中的Web服务资源的执行顺序,将Web服务资源发送给对应的移动终端。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310167479.3A CN103237083B (zh) | 2013-05-08 | 2013-05-08 | 一种移动信息服务资源聚合系统及方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310167479.3A CN103237083B (zh) | 2013-05-08 | 2013-05-08 | 一种移动信息服务资源聚合系统及方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103237083A true CN103237083A (zh) | 2013-08-07 |
CN103237083B CN103237083B (zh) | 2016-06-29 |
Family
ID=48885099
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201310167479.3A Expired - Fee Related CN103237083B (zh) | 2013-05-08 | 2013-05-08 | 一种移动信息服务资源聚合系统及方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103237083B (zh) |
Cited By (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103577568A (zh) * | 2013-10-30 | 2014-02-12 | 北京邮电大学 | 一种跨平台的移动安全综合信息聚合系统及其方法 |
CN103747097A (zh) * | 2014-01-22 | 2014-04-23 | 电子科技大学 | 移动终端http请求聚合压缩的系统及方法 |
CN104123157A (zh) * | 2014-07-17 | 2014-10-29 | 北京京东尚科信息技术有限公司 | 一种移动终端的跨平台业务逻辑定制方法和装置 |
CN104267957A (zh) * | 2014-09-29 | 2015-01-07 | 浪潮通信信息系统有限公司 | 一种移动应用统一服务框架系统 |
CN104636139A (zh) * | 2015-01-26 | 2015-05-20 | 北京邮电大学 | 一种可视化跨平台移动应用开发与生成系统 |
CN106020948A (zh) * | 2016-05-10 | 2016-10-12 | 中国银联股份有限公司 | 一种流程调度方法及装置 |
CN103645896B (zh) * | 2013-12-02 | 2017-02-08 | 华为技术有限公司 | 基于html5实现应用功能的方法与装置 |
CN107277787A (zh) * | 2017-06-28 | 2017-10-20 | 青岛科技大学 | 一种基于web规范的彩信展现方法 |
CN107391118A (zh) * | 2017-06-29 | 2017-11-24 | 国家计算机网络与信息安全管理中心 | 一种Web应用用户体验平台系统 |
CN107818073A (zh) * | 2017-11-14 | 2018-03-20 | 北京思特奇信息技术股份有限公司 | 一种动态表单页面自动转换为html5页面的方法及系统 |
CN110795216A (zh) * | 2018-08-03 | 2020-02-14 | 北京京东尚科信息技术有限公司 | 一种实现移动端多应用整合容器的方法和装置 |
CN111176714A (zh) * | 2019-12-16 | 2020-05-19 | 优地网络有限公司 | 软件系统开发方法、装置、终端设备及存储介质 |
CN111259303A (zh) * | 2020-01-20 | 2020-06-09 | 西安百想科技有限公司 | 一种web信息系统前端页面自动生成的系统及其方法 |
CN112286702A (zh) * | 2020-10-29 | 2021-01-29 | 上海淇玥信息技术有限公司 | 一种机器人聚合平台的调用方法、装置和电子设备 |
CN112380407A (zh) * | 2020-11-16 | 2021-02-19 | 广州奥格智能科技有限公司 | 基于cim平台的服务场景聚合方法、系统及存储介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102362272A (zh) * | 2009-03-25 | 2012-02-22 | 微软公司 | 移动应用程序的设备相关的按需编译和部署 |
CN102685254A (zh) * | 2012-05-31 | 2012-09-19 | 深圳英宝通科技有限公司 | 一种跨平台移动网络终端控制方法及其系统 |
CN102779064A (zh) * | 2011-05-10 | 2012-11-14 | 北京磊友信息科技有限公司 | 提供应用调用的方法和服务器 |
CN102779063A (zh) * | 2011-05-10 | 2012-11-14 | 北京磊友信息科技有限公司 | 提供应用调用的方法和服务器 |
-
2013
- 2013-05-08 CN CN201310167479.3A patent/CN103237083B/zh not_active Expired - Fee Related
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102362272A (zh) * | 2009-03-25 | 2012-02-22 | 微软公司 | 移动应用程序的设备相关的按需编译和部署 |
CN102779064A (zh) * | 2011-05-10 | 2012-11-14 | 北京磊友信息科技有限公司 | 提供应用调用的方法和服务器 |
CN102779063A (zh) * | 2011-05-10 | 2012-11-14 | 北京磊友信息科技有限公司 | 提供应用调用的方法和服务器 |
CN102685254A (zh) * | 2012-05-31 | 2012-09-19 | 深圳英宝通科技有限公司 | 一种跨平台移动网络终端控制方法及其系统 |
Cited By (24)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103577568A (zh) * | 2013-10-30 | 2014-02-12 | 北京邮电大学 | 一种跨平台的移动安全综合信息聚合系统及其方法 |
CN103645896B (zh) * | 2013-12-02 | 2017-02-08 | 华为技术有限公司 | 基于html5实现应用功能的方法与装置 |
CN103747097A (zh) * | 2014-01-22 | 2014-04-23 | 电子科技大学 | 移动终端http请求聚合压缩的系统及方法 |
CN103747097B (zh) * | 2014-01-22 | 2016-08-24 | 电子科技大学 | 移动终端http请求聚合压缩的系统及方法 |
CN104123157A (zh) * | 2014-07-17 | 2014-10-29 | 北京京东尚科信息技术有限公司 | 一种移动终端的跨平台业务逻辑定制方法和装置 |
CN104123157B (zh) * | 2014-07-17 | 2017-08-29 | 北京京东尚科信息技术有限公司 | 一种移动终端的跨平台业务逻辑定制方法和装置 |
CN104267957A (zh) * | 2014-09-29 | 2015-01-07 | 浪潮通信信息系统有限公司 | 一种移动应用统一服务框架系统 |
CN104636139B (zh) * | 2015-01-26 | 2018-05-15 | 北京邮电大学 | 一种可视化跨平台移动应用开发与生成系统 |
CN104636139A (zh) * | 2015-01-26 | 2015-05-20 | 北京邮电大学 | 一种可视化跨平台移动应用开发与生成系统 |
CN106020948A (zh) * | 2016-05-10 | 2016-10-12 | 中国银联股份有限公司 | 一种流程调度方法及装置 |
CN106020948B (zh) * | 2016-05-10 | 2019-09-17 | 中国银联股份有限公司 | 一种流程调度方法及装置 |
CN107277787A (zh) * | 2017-06-28 | 2017-10-20 | 青岛科技大学 | 一种基于web规范的彩信展现方法 |
CN107391118A (zh) * | 2017-06-29 | 2017-11-24 | 国家计算机网络与信息安全管理中心 | 一种Web应用用户体验平台系统 |
CN107391118B (zh) * | 2017-06-29 | 2020-11-24 | 国家计算机网络与信息安全管理中心 | 一种Web应用用户体验平台系统 |
CN107818073B (zh) * | 2017-11-14 | 2021-05-04 | 北京思特奇信息技术股份有限公司 | 一种动态表单页面自动转换为html5页面的方法及系统 |
CN107818073A (zh) * | 2017-11-14 | 2018-03-20 | 北京思特奇信息技术股份有限公司 | 一种动态表单页面自动转换为html5页面的方法及系统 |
CN110795216A (zh) * | 2018-08-03 | 2020-02-14 | 北京京东尚科信息技术有限公司 | 一种实现移动端多应用整合容器的方法和装置 |
CN111176714A (zh) * | 2019-12-16 | 2020-05-19 | 优地网络有限公司 | 软件系统开发方法、装置、终端设备及存储介质 |
CN111176714B (zh) * | 2019-12-16 | 2024-04-26 | 优地网络有限公司 | 软件系统开发方法、装置、终端设备及存储介质 |
CN111259303A (zh) * | 2020-01-20 | 2020-06-09 | 西安百想科技有限公司 | 一种web信息系统前端页面自动生成的系统及其方法 |
CN111259303B (zh) * | 2020-01-20 | 2023-05-12 | 西安百想科技有限公司 | 一种web信息系统前端页面自动生成的系统及其方法 |
CN112286702B (zh) * | 2020-10-29 | 2023-09-22 | 上海淇玥信息技术有限公司 | 一种机器人聚合平台的调用方法、装置和电子设备 |
CN112286702A (zh) * | 2020-10-29 | 2021-01-29 | 上海淇玥信息技术有限公司 | 一种机器人聚合平台的调用方法、装置和电子设备 |
CN112380407A (zh) * | 2020-11-16 | 2021-02-19 | 广州奥格智能科技有限公司 | 基于cim平台的服务场景聚合方法、系统及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN103237083B (zh) | 2016-06-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103237083B (zh) | 一种移动信息服务资源聚合系统及方法 | |
US20230036980A1 (en) | Micro-frontend system, sub-application loading method, electronic device, computer program product, and computer-readable storage medium | |
US9760343B2 (en) | Application builder based on metadata | |
US9158510B2 (en) | System and computer program product for creating a telecommunications application | |
US20160253171A1 (en) | Application development system with native feature engine | |
CN112114890A (zh) | 小程序的处理方法、装置、设备及存储介质 | |
CN104821954A (zh) | 一种跨平台远程过程调用方法 | |
CN103577568A (zh) | 一种跨平台的移动安全综合信息聚合系统及其方法 | |
CN110580154A (zh) | 基于h5接入方式的接入方法及其接入组件和移动终端 | |
CN110580174B (zh) | 应用组件生成方法、服务器及终端 | |
CN114706579A (zh) | 页面开发方法、装置、服务器及存储介质 | |
CN105824616A (zh) | 一种用于设备控制系统程序的开发方法及框架 | |
CN114168460A (zh) | 混合开发中前端代码的远程调试方法、设备及存储介质 | |
CN101876998B (zh) | 一种实现数据编辑的方法和系统 | |
CN117707702A (zh) | 一种在线ide的实现方法及系统 | |
CN101964742B (zh) | 一种网络开放能力使用方法、系统和装置 | |
CN107239265B (zh) | Java函数与C函数的绑定方法及装置 | |
CN111679828A (zh) | 一种数据处理的方法及装置、电子设备、存储介质 | |
CN112287266A (zh) | 一种网页配置的处理方法及其装置、设备及存储介质 | |
CN113641594B (zh) | 跨端自动化测试方法以及相关装置 | |
CN117632123A (zh) | 局部动态化页面生成方法、装置、设备及存储介质 | |
CN113098942B (zh) | 一种分布式系统的数据处理方法及装置 | |
CN112487322B (zh) | 一种第三方应用Loading页面的加载方法及显示设备 | |
CN115525305A (zh) | 数据处理、应用启动方法、装置、计算机设备和存储介质 | |
Tanaka et al. | Web API Creation for Enterprise Mashup |
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 | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20160629 |