CN103605527A - 实现云计算应用间界面集成和统一样式展现的系统及方法 - Google Patents
实现云计算应用间界面集成和统一样式展现的系统及方法 Download PDFInfo
- Publication number
- CN103605527A CN103605527A CN201310655815.9A CN201310655815A CN103605527A CN 103605527 A CN103605527 A CN 103605527A CN 201310655815 A CN201310655815 A CN 201310655815A CN 103605527 A CN103605527 A CN 103605527A
- Authority
- CN
- China
- Prior art keywords
- interface
- integrated
- submodule
- application
- javascript
- 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
Links
Images
Landscapes
- Stored Programmes (AREA)
Abstract
本发明涉及一种实现云计算应用间界面集成和统一样式展现的系统,其中包括服务端代理模块和JavaScript框架模块,所述的服务端代理模块包括HTTP子模块、反向代理子模块和内容替换子模块,所述的JavaScript框架模块包括事件子模块、Ajax子模块、沙箱子模块、基础子模块和渲染器子模块。采用该种实现云计算应用间界面集成和统一样式展现的系统及方法,可以实现克服了现有技术中的多系统界面风格不统一、界面间通过JavaScript交互受限的缺点,提供一种无需集成应用提供代理模块、实现灵活的JavaScript交互、高响应速度的界面访问效果的统一界面,减少了应用集成的各项成本投入,避免了代码逻辑的更多错误,适用于大规模推广应用。
Description
技术领域
本发明涉及计算机软件领域,尤其涉及Web应用系统领域,具体是指一种实现云计算应用间界面集成和统一样式展现的系统及方法。
背景技术
1、概述
随着现代社会的科学技术发展,大型企业的计算机软件系统也不断的进步,形式上,也由以前的C/S(客户端/服务器)逐渐的转向B/S(浏览器/服务器)模式,越来越多的B/S(浏览器/服务器)企业应用被创建和使用,随着云计算技术的兴起,传统的B/S(浏览器/服务器)模式的应用,更多的被从传统的服务器上,转移至云端。但多个独立的应用间需要协同合作时,不可避免的带来了系统集成的问题。如何让多个应用能以一种统一的方式,作为一个应用呈现给用户,并保证各应用间的界面交互?
企业信息化建设到今天,越来越多的事情,需要在各个信息化的系统中完成,例如HR系统、ERP系统、财务系统等等,需要在各个系统间不停的切换,各个系统的操作习惯和使用方式,界面布局等也有较大的差异,大大降低工作效率,迫切的需要一种能统一集成各个独立的系统的方法,在最小的代价下,实现这样的能力,并能统一个系统的界面,操作习惯等
2、现有技术介绍
系统界面集成目前有两种方式,一种是通过调用被集成应用提供的WS(Web service,Web服务)等接口,获取系统的相关数据,然后再组织开发新的界面,进行展示;一种是通过集成现有系统的已有界面,通过URL地址,在Web界面中使用Iframe(内嵌框架)嵌入的方式,将界面集成进来。
例如传统的Portal(统一企业门户)应用,需要集成多个已经存在的系统,如OA(办公自动化)系统、ERP(Enterprise Resource Planning,企业资源计划)系统、CRM(CustomerRelationship Management,客户关系管理)系统等。这些系统由不同的技术实现,使用传统的第一种方式集成这些系统的做法是,首先集成菜单,即通过调用现有的系统中的菜单获取相关接口将数据归类整合,再通过在Portal应用中开发新的菜单展示功能,将菜单按照统一的模式展示。各个菜单都需要定位到确定的功能界面中,并在Portal中统一展示,而不是像独立系统一样,在新的窗口中分别打开不同系统的界面。
传统的第二种集成方式是利用Iframe,Portal应用通常会提供一个统一的Iframe展示区域,当点击菜单时,在该Iframe中加载对应URL(Uniform Resource Locator,统一资源定位符)地址的界面内容,将界面功能集成进来。通过这种方式的集成,集成功能的相互调用在Web端通常会呈现出跨域的情况,为了克服这个问题,通常会在Portal应用中开发一个代理模块,在Iframe加载指定URL地址界面内容时,由代理模块负责访问应用的内容并做呈现。
3、现有技术实现过程的不足
采用第一种方式的集成,存在如下弊端:首先,需要被集成应用已经存在相关的接口,否则集成时无法调用,需要开发相关接口,带来非常大的工作量。其次需要知道对应接口的参数和返回内容,通常不同系统的接口实现方式不同,相关参数也自然不同,返回的数据格式更是存在差异,集成应用需要针对这些差异,提供对应的解析方式。无形中,需要集成人员对已有系统的架构、设计非常了解,无形中增加了集成的代价。
采用第二种方式的集成,存在如下弊端:使用Iframe通过URL嵌入到界面的方式,由于各个系统之间存在展现风格上的差异,同时因为存在跨域的问题,各个界面间无法进行通信,无法使用目前最流行的脚本语言JavaScript(Java描述语言)进行交互。系统只能通过URL后面携带参数的方式,进行参数的传递,通过引入代理模块的方式解决这个问题又会造成各个系统的访问都需要从代理模块开始,代理模块容易成为系统访问的单点故障,同时又无形中增加了集成应用的压力。
发明内容
本发明的目的是克服了上述现有技术的缺点,提供了一种能够实现无需集成应用提供代理模块、实现灵活的JavaScript交互、高响应速度的界面访问效果、统一的集成用户界面风格,非侵入式和低耦合度的界面集成效果的实现云计算应用间界面集成和统一样式展现的系统及方法。
为了实现上述目的,本发明的实现云计算应用间界面集成和统一样式展现的系统及方法具有如下构成:
该实现云计算应用间界面集成和统一样式展现的系统及方法,其主要特点是,所述的系统包括服务端代理模块和JavaScript框架模块,所述的服务端代理模块包括:
HTTP子模块,用以与浏览器、Web应用服务器和用户进行通信;
反向代理子模块,用以使用同一个网络地址代理各个不同网络地址的被集成应用;
内容替换子模块,用以在代理访问被集成应用时在界面接口中注入所述的JavaScript框架模块;
所述的JavaScript框架模块包括:
事件子模块,用以提供基于名称匹配的事件机制并进行各个界面间的交互;
Ajax子模块,用以提供统一的Ajax功能并与所述的HTTP子模块进行交互通信;
沙箱子模块,用以展现各个被集成的界面并进行各个应用的界面间隔离;
基础子模块,用以提供统一的编程API接口并进行各个被集成应用之间的交互通信;
渲染器子模块,用以根据不同类型的集成方案对应匹配的渲染器进行差异化的渲染。
较佳地,所述的界面接口包括界面开始加载时的对外接口、界面本身资源加载后的对外接口和界面内容完全加载完成后的对外接口。
较佳地,所述的渲染器包括普通HTML内容的渲染器、异步界面集成的渲染器、IFrame的集成渲染器、Google的Widget渲染器和Portlet的Widget渲染器。
本发明还涉及一种基于所述的系统实现云计算应用间界面集成和统一样式展现的方法,其主要特点是,所述的方法包括以下步骤:
(1)所述的JavaScript框架模块搭建统一样式展现平台框架;
(2)所述的反向代理子模块配置各个被集成应用的访问路径使得各个被集成应用统一配置在与所述的统一样式展现平台框架同样的网络地址下;
(3)所述的JavaScript框架模块基于所述的统一样式展现平台框架建立统一样式的JavaScript框架集成界面;
(4)所述的内容替换子模块在被集成应用的界面接口中注入所述的统一样式的JavaScript框架集成界面。
较佳地,所述的JavaScript框架模块基于所述的统一样式展现平台框架建立统一样式的JavaScript框架集成界面,包括以下步骤:
(31)所述的JavaScript框架模块配置所述的统一样式展现平台框架中被集成应用的信息;
(32)所述的JavaScript框架模块进行JavaScript资源和CSS资源的配置;
(33)所述的JavaScript框架模块进行Widget的初始化工作和沙箱的创建;
(34)所述的渲染器子模块选择合适的渲染器对Widget内容进行渲染。
更佳地,所述的被集成应用的信息包括被集成应用的IP地址、端口和应用名称。
更佳地,所述的内容替换子模块在被集成应用的界面接口中注入所述的统一样式的JavaScript框架集成界面,包括以下步骤:
(41)所述的内容替换子模块进行所述的统一样式的JavaScript框架集成界面在界面开始接口的注入;
(42)所述的内容替换子模块进行所述的统一样式的JavaScript框架集成界面在界面加载后接口的注入;
(43)所述的内容替换子模块进行所述的统一样式的JavaScript框架集成界面在界面加载完全完成后接口的注入。
更进一步地,所述的内容替换子模块进行所述的统一样式的JavaScript框架集成界面在界面开始接口的注入,包括以下步骤:
(411)所述的内容替换子模块进行在界面开始接口中全局信息的定义;
(412)所述的沙箱子模块进行各个应用间的界面隔离。
更进一步地,所述的内容替换子模块进行所述的统一样式的JavaScript框架集成界面在界面加载后接口的注入,具体为:
所述的内容替换子模块在界面加载后接口中注入所述的统一样式的JavaScript框架集成界面中的JavaScript资源和CSS资源。
更进一步地,所述的内容替换子模块进行所述的统一样式的JavaScript框架集成界面在界面加载完全完成后接口的注入,具体为:
所述的内容替换子模块进行界面对外接口类的实例化。
采用了该发明中的实现云计算应用间界面集成和统一样式展现的系统及方法,具有如下有益效果:
(1)克服了上述现有技术中的多系统界面风格不统一、界面间通过JavaScript交互受限的缺点。提供一种无需集成应用提供代理模块、实现灵活的JavaScript交互、高响应速度的界面访问效果、统一的集成UI(User interface,用户界面)风格,非侵入式和低耦合度的界面集成效果。
(2)提升了集成应用的访问处理能力:传统集成代理是通过编写代理模块实现,性能相比代理服务器要相差很多,由于代理服务器独立部署,相关代理功能使用C语言等更底层的语言实现,能更高效的处理代理的工作。
(3)提升了应用集成的前端交互处理能力:由于采用了集成交互及统一样式展现的系统结构与方法,该方法包括引入集成交互及统一样式展现的前端JavaScript框架,该框架提供了一整套的前端交互方式,采用名称匹配段事件驱动模式,低耦合。
(4)提升了应用集成的工作效率:采用了实现云计算应用间界面集成交互及统一样式展现的系统结构与方法,是传统的编程集成转变为更简单、更容易实现的界面集成,使得原本分析员有数据结构,系统结构的繁琐工作,转变为简单的界面样式风格统一的工作,无需开发新的后台代码。通常一个应用会使用统一的CSS样式风格,在集成一个应用的多个界面时,只需要配置一套样式即可。
(5)减少了应用集成的各项成本投入:由于使用现有的界面实现集成,避免了代码逻辑的更多错误,同时也节约了集成的工作量,适用于大规模推广应用。
附图说明
图1为本发明的实现云计算应用间界面集成和统一样式展现的系统的结构示意图。
图2为本发明的代理服务器访问的效果图。
图3为本发明的事件机制原理图。
图4为本发明的实现云计算应用间界面集成和统一样式展现的方法的流程图。
具体实施方式
为了能够更清楚地描述本发明的技术内容,下面结合具体实施例来进行进一步的描述。
第一部分:系统结构功能模块组成及说明,参见附图1.
该实现云计算应用间界面集成交互及统一样式展现的系统结构包括服务端代理模块,Web端JavaScript集成交互框架。HTTP模块、方向代理模块和内容替换模块通常由具有反向代理能力和内容替换能力的服务器提供,例如Apache和Ngix。Ajax模块、事件模块、沙箱模块和渲染器模块由集成交互和统一样式展现的JavaScript框架提供。其主要特点如下:
所述的服务端代理模块包括:
HTTP子模块,用于和浏览器、Web应用服务器以及本地文件系统进行通信的功能模块,用户通过浏览器发送的HTTP请求至该模块获取相应的内容。
反向代理子模块,用于统一代理被集成应用,将在各个不同网络地址的应用,代理到一个地址出口下,用户通过一个网络地址,即可访问各个不同的应用模块,解决各个应用间交互的跨域问题。
内容替换子模块,用于注入统一的JavaScript框架入口,该模块为将通过HTTP子模块代理访问得到的界面内容,经过部分的内容替换后,将前端统一的JavaScript框架应用注入进去,界面内容达到浏览器后,就可以引入统一的集成交互及统一样式展现的JavaScript框架
集成交互及统一样式展现的JavaScript框架模块,该模块提供了前端各个应用间交互的基础,提供了完成各集成界面样式统一的功能
所述的集成交互及统一样式展现的JavaScript框架模块包括:
事件子模块:定义事件机制、提供一整套的基于名称匹配的事件机制,用于各个界面间的交互;
Ajax子模块:提供统一的Ajax功能,用于同HTTP子模块的交互通信;
沙箱子模块:应用展现各个被集成的界面,实现各个应用间的界面间隔离,保证界面的安全性。
基础模块:提供统一的编程API(Application Programming Interface,应用程序接口)接口,集成应用能无缝的实现各个集成应用的交互通信
渲染器子模块:提供多种类型的集成方案,并不同类型的集成方案对应匹配的渲染器,实现差异化的渲染。
内容替换子模块,在代理访问被集成界面功能时,实现集成交互及统一样式展现的JavaScript框架模块的接口注入,常用接口包括:界面开始加载时的对外接口,界面本身资源加载后的对外接口,界面内容完全加载完成后的对外接口。并可以根据被集成应用的实际情况,完成接口注入的内容替换配置。
事件子模块主要提供以下的功能:添加事件监听,移除事件监听和触发事件。
Ajax子模块提供:发送GET亲请求,发送POST请求,异步获取文本,同步获取文本和XML数据获取等功能。
渲染器子模块提供:普通HTML内容的渲染器、异步界面集成的渲染器、IFrame的集成渲染器、Google的Widget渲染器和Portlet的Widget渲染器。
如图2所示为代理服务器访问的效果图。、
如图3所示为事件机制的原理图。
触发器在不同的集成页面中、统一集成平台中都可以存在,触发器触发相关的事件;
监听器添加事件的监听,注册在事件总线上;
事件总线负责路由所有触发器触发的事件,并匹配相应的监听器进行处理。
第二部分:系统界面集成的方法及步骤。
该基于上述云计算应用间界面集成交互及统一样式展现的系统结构与方法,其主要特点是,所述的方法包括:
(1)搭建反向代理服务器;
(2)配置被集成应用的反向代理设置;
(3)配置被集成应用在反向代理服务器上的内容替换功能;
(4)搭建集成交互及统一样式展现的开发框架;
(5)集成交互及统一样式展现的JavaScript框架界面开始接口工作;
(6)集成交互及统一样式展现的JavaScript框架界面资源加载后接口工作;
(7)集成交互及统一样式展现的JavaScript框架界面内容加载完成后接口工作。
所述的搭建反向代理服务器包括:
部署具有反向代理功能的Web服务器,并要求该服务器具备代理内容替换功能,如Apache服务器或Ngix服务器。
所述的集成应用的反向代理设置包括:
(21)所述反向代理服务器的部署;
(22)所述反向代理服务器代理模块功能的开启配置;
(23)所述反向代理服务器被代理应用的配置,配置被代理应用信息,需要被代理转发的内容类型等,需要被代理时的特殊处理;
(24)所述反向代理服务器被代理应用的统一访问路径配置,将各个被代理的应用,统一集中配置在一个IP端口下,实现各个应用的访问地址统一,同时解决前端各系统间交互的跨域问题。
所述的配置被集成应用在反向代理服务器上的内容替换功能包括:
(31)所述的反向代理服务器内容替换实现界面开始接口的注入替换,在此可以实现界面全局信息的定义等。
(32)所述的反向代理服务器内容替换实现界面资源加载完成的替换,在此可以实现界面资源信息的重载和覆盖等。
(33)所述的反向代理服务器内容替换实现界面内容加载完成的替换,在此可以实现界面时间定义及对外API提供等。
所述的搭建集成交互及统一样式的开发框架包括:
(41)建立一个集成交互的应用,其中包括集成交互及统一样式展现的JavaScript框架;
(42)建立应用集成交互及统一样式的统一展现平台框架,所有被集成应用都在该平台框架下展现,并实现交互;
(43)配置反向代理服务器对该应用的反向代理;
所述的使用集成交互及统一样式的JavaScript框架集成界面包括:
(51)在所述的集成交互及统一样式的统一展现平台,配置需要集成的应用的信息,包括应用的IP地址、端口、应用名称等信息,因为上述步骤已经对所需集成的应用进行了反向代理的配置工作,所以被集成的应用是和集成交互及统一样式的开发框架应用属于同一个IP地址和端口。
(52)所述的集成应用界面注入的JavaScript开发,在此处可以对现有界面的逻辑进行重新的定义控制,对界面的操作及事件响应进行重新的覆盖,编写新的程序逻辑,在此可以添加集成交互及统一样式的JavaScript框架的事件触发,实现低耦合的与外部进行通信;可以通过定义一个JavaScript类,用于对外公开该集成界面的接口,外部与当前界面进行交互时,可以通过该接口来实现;可以注册集成交互及统一样式的JavaScript框架的事件响应,用来实现与外部的低耦合交互。
(53)所属的集成应用界面注入的CSS开发,在此处可以通过对界面元素进行分析后,编写新的CSS样式,覆盖现有样式,来达到统一界面风格的需求。
(54)所述的集成交互及统一样式的JavaScript框架根据配置信息。即为Widget(微件,是一小块可以在任意一个基于HTML的Web页面上执行的代码)的配置,配置内容包括:WidgetId,要求全局唯一;上述步骤开发的注入的JavaScript资源。上述步骤开发的注入的CSS资源。
(55)所述的集成交互及统一样式的JavaScript框架根据配置信息,完成Widget的初始化工作,完成沙箱的创建,并根据Widget类型,匹配合适的渲染器进行Widget内容的渲染。
(56)所述的沙箱对应的Window对象,设置name属性值为WidgetId,全局唯一。在Widget对应沙箱的内部,编程时即可根据该属性的内容,获取被集成的应用界面的相关配置信息。设置在该属性上的值,不会因为沙箱加载的界面发生变化而改变,从而建立沙箱和沙箱内部的编程内容与外部配置的通信通道
所述的集成交互及统一样式的JavaScript的界面开始接口工作包括:
(61)重新保存window.name的属性值,防止界面本身的逻辑代码将该值进行覆盖后,导致界面无法获取widget对象信息;
(62)沙箱的安全隔离工作,重写界面的top和parent对象,是界面访问该对象时带来的不必要错误。
所述集成交互及统一样式展现的JavaScript框架界面资源加载后接口包括:
(71)加载Widget定义时定义的所需注入的JavaScript资源;
(72)加载Widget定义时定义的所需注入的CSS(级联样式表)资源;
所述的集成交互及统一样式展现的JavaScript框架界面内容加载完成后接口工作包括:
(81)实例化对外公开API的接口类。
如图4所示,本发明的实现云计算应用间界面集成和统一样式展现的方法包括以下步骤:
(1)所述的JavaScript框架模块搭建统一样式展现平台框架;
(2)所述的反向代理子模块配置各个被集成应用的访问路径使得各个被集成应用统一配置在与所述的统一样式展现平台框架同样的网络地址下;
(3)所述的JavaScript框架模块基于所述的统一样式展现平台框架建立统一样式的JavaScript框架集成界面;
(4)所述的内容替换子模块在被集成应用的界面接口中注入所述的统一样式的JavaScript框架集成界面。
在实际应用中,本发明的实现云计算应用间界面集成交互及统一样式展现的系统结构与方法的具体构成如下:
(1)所述的反向代理服务器的搭建配置;
(11)所述的代理服务器的搭建;
在集成服务器上部署反向代理服务器,例如,部署Apache服务器至Windows2003操作系统的服务器。
(12)所述的代理服务器的代理模块启用配置;
取消下面配置行首部#号,开启代理模块;
#LoadModule proxy_module modules/mod_proxy.so
#LoadModule proxy_ajp_module modules/mod_proxy_ajp.so
#LoadModule proxy_balancer_module modules/mod_proxy_balancer.so
#LoadModule proxy_connect_module modules/mod_proxy_connect.so
#LoadModule proxy_ftp_module modules/mod_proxy_ftp.so
#LoadModule proxy_http_module modules/mod_proxy_http.so
(13)所述的代理服务器的gzip压缩模块启用配置;
取消下面配置行首部#号,开启gzip压缩模块,减少静态资源的网络传输量,达到更好的速度响应
#LoadModule deflate_module modules/mod_deflate.so
(14)所述的代理服务器的内容替换子模块启用配置;
取消下面配置行首部#号,开启内容替换子模块,用于集成交互及统一样式展现框架的注入
#LoadModule deflate_module modules/mod_substitute.so
(15)所述的代理服务器的集成应用的反向代理虚拟机配置
(16)所述的代理服务器的集成应用的内容替换配置
(17)替换界面中的<head>标签为:
<head><script>var
WidgetContext=top.WidgetContext;if(WidgetContext){WidgetContext.Widget.headStart(window);}
实现界面开始接口的注入,该接口实现全局信息的定义和沙箱的隔离功能;
替换界面中的</head>标签为:
<script>if(WidgetContext){WidgetContext.Widget.headEnd(window);}</script></head>
实现界面资源加载完成后接口的注入,该接口实现JavaScript资源和CSS资源的注入工作;
替换界面中的</body>标签为:
<script>if(WidgetContext){WidgetContext.Widget.bodyEnd(window);}</script></body>
实现界面内容加载完成的接口的注入,该接口实现界面对外接口类的实例化和其他相关逻辑,如:事件监听器的注册,事件触发器的触发等。
(2)所述的集成统一平台的应用开发搭建;
开发一个统一集成应用,包含集成交互及统一样式展现的JavaScript框架;
开发一个统一集成应用界面展示的界面,被集成应用界面将在该统一展示界面下。
(3)所述的集成应用信息的配置;
所述的集成应用信息的配置:WidgetId配置,该ID要求全局唯一;
所述的集成应用信息的配置:集成界面URL地址的配置;
所述的集成应用信息的配置:集成界面注入的JavaScript代码的配置;
所述的集成应用信息的配置:集成界面注入的CSS样式文件的配置;
所述的集成应用信息的配置:界面内容是否重写的配置,该属性配置为true,将对界面中的图片地址、资源引用地址、表单提交等地址进行重写;
所述的集成应用信息的配置JSON表现为
(4)集成应用界面注入JavaScript代码的开发;
开发一个JavaScript类,类名为BaiduSeach;
为该类定义方法,作为对外公开的API;
定义覆盖当前界面现有方法的同名方法,对现有的方法进行覆盖;
定义新的代码逻辑,通过添加事件触发器的方式,往事件总线上发送事件;
定义新的代码逻辑,通过添加事件监听器的方式,响应事件总线上的事件;
(5)集成应用界面注入的CSS样式的编码;
开发CSS文件,根据界面改造要求,编写CSS代码,改造界面元素的效果;
(6)集成应用的运行;
使用WidgetContext.createWidget接口,根据上述步骤配置的继承应用的界面信息,创建一个集成的Widget,用于展现集成的应用界面。
采用了该发明中的实现云计算应用间界面集成和统一样式展现的系统及方法,具有如下有益效果:
(1)克服了上述现有技术中的多系统界面风格不统一、界面间通过JavaScript交互受限的缺点。提供一种无需集成应用提供代理模块、实现灵活的JavaScript交互、高响应速度的界面访问效果、统一的集成UI(User interface,用户界面)风格,非侵入式和低耦合度的界面集成效果。
(2)提升了集成应用的访问处理能力:传统集成代理是通过编写代理模块实现,性能相比代理服务器要相差很多,由于代理服务器独立部署,相关代理功能使用C语言等更底层的语言实现,能更高效的处理代理的工作。
(3)提升了应用集成的前端交互处理能力:由于采用了集成交互及统一样式展现的系统结构与方法,该方法包括引入集成交互及统一样式展现的前端JavaScript框架,该框架提供了一整套的前端交互方式,采用名称匹配段事件驱动模式,低耦合。
(4)提升了应用集成的工作效率:采用了实现云计算应用间界面集成交互及统一样式展现的系统结构与方法,是传统的编程集成转变为更简单、更容易实现的界面集成,使得原本分析员有数据结构,系统结构的繁琐工作,转变为简单的界面样式风格统一的工作,无需开发新的后台代码。通常一个应用会使用统一的CSS样式风格,在集成一个应用的多个界面时,只需要配置一套样式即可。
(5)减少了应用集成的各项成本投入:由于使用现有的界面实现集成,避免了代码逻辑的更多错误,同时也节约了集成的工作量,适用于大规模推广应用。
在此说明书中,本发明已参照其特定的实施例作了描述。但是,很显然仍可以作出各种修改和变换而不背离本发明的精神和范围。因此,说明书和附图应被认为是说明性的而非限制性的。
Claims (10)
1.一种实现云计算应用间界面集成和统一样式展现的系统,其特征在于,所述的系统包括服务端代理模块和JavaScript框架模块,所述的服务端代理模块包括:
HTTP子模块,用以与浏览器、Web应用服务器和用户进行通信;
反向代理子模块,用以使用同一个网络地址代理各个不同网络地址的被集成应用;
内容替换子模块,用以在代理访问被集成应用时在界面接口中注入所述的JavaScript框架模块;
所述的JavaScript框架模块包括:
事件子模块,用以提供基于名称匹配的事件机制并进行各个界面间的交互;
Ajax子模块,用以提供统一的Ajax功能并与所述的HTTP子模块进行交互通信;
沙箱子模块,用以展现各个被集成的界面并进行各个应用的界面间隔离;
基础子模块,用以提供统一的编程API接口并进行各个被集成应用之间的交互通信;
渲染器子模块,用以根据不同类型的集成方案对应匹配的渲染器进行差异化的渲染。
2.根据权利要求1所述的实现云计算应用间界面集成和统一样式展现的系统,其特征在于,所述的界面接口包括界面开始加载时的对外接口、界面本身资源加载后的对外接口和界面内容完全加载完成后的对外接口。
3.根据权利要求1所述的实现云计算应用间界面集成和统一样式展现的系统,其特征在于,所述的渲染器包括普通HTML内容的渲染器、异步界面集成的渲染器、IFrame的集成渲染器、Google的Widget渲染器和Portlet的Widget渲染器。
4.一种基于权利要求1至3中任一项所述的系统实现云计算应用间界面集成和统一样式展现的方法,其特征在于,所述的方法包括以下步骤:
(1)所述的JavaScript框架模块搭建统一样式展现平台框架;
(2)所述的反向代理子模块配置各个被集成应用的访问路径使得各个被集成应用统一配置在与所述的统一样式展现平台框架同样的网络地址下;
(3)所述的JavaScript框架模块基于所述的统一样式展现平台框架建立统一样式的JavaScript框架集成界面;
(4)所述的内容替换子模块在被集成应用的界面接口中注入所述的统一样式的JavaScript框架集成界面。
5.根据权利要求1所述的实现云计算应用间界面集成和统一样式展现的方法,其特征在于,所述的JavaScript框架模块基于所述的统一样式展现平台框架建立统一样式的JavaScript框架集成界面,包括以下步骤:
(31)所述的JavaScript框架模块配置所述的统一样式展现平台框架中被集成应用的信息;
(32)所述的JavaScript框架模块进行JavaScript资源和CSS资源的配置;
(33)所述的JavaScript框架模块进行Widget的初始化工作和沙箱的创建;
(34)所述的渲染器子模块选择合适的渲染器对Widget内容进行渲染。
6.根据权利要求5所述的实现云计算应用间界面集成和统一样式展现的方法,其特征在于,所述的被集成应用的信息包括被集成应用的IP地址、端口和应用名称。
7.根据权利要求5所述的实现云计算应用间界面集成和统一样式展现的方法,其特征在于,所述的内容替换子模块在被集成应用的界面接口中注入所述的统一样式的JavaScript框架集成界面,包括以下步骤:
(41)所述的内容替换子模块进行所述的统一样式的JavaScript框架集成界面在界面开始接口的注入;
(42)所述的内容替换子模块进行所述的统一样式的JavaScript框架集成界面在界面加载后接口的注入;
(43)所述的内容替换子模块进行所述的统一样式的JavaScript框架集成界面在界面加载完全完成后接口的注入。
8.根据权利要求7所述的实现云计算应用间界面集成和统一样式展现的方法,其特征在于,所述的内容替换子模块进行所述的统一样式的JavaScript框架集成界面在界面开始接口的注入,包括以下步骤:
(411)所述的内容替换子模块进行在界面开始接口中全局信息的定义;
(412)所述的沙箱子模块进行各个应用间的界面隔离。
9.根据权利要求7所述的实现云计算应用间界面集成和统一样式展现的方法,其特征在于,所述的内容替换子模块进行所述的统一样式的JavaScript框架集成界面在界面加载后接口的注入,具体为:
所述的内容替换子模块在界面加载后接口中注入所述的统一样式的JavaScript框架集成界面中的JavaScript资源和CSS资源。
10.根据权利要求7所述的实现云计算应用间界面集成和统一样式展现的方法,其特征在于,所述的内容替换子模块进行所述的统一样式的JavaScript框架集成界面在界面加载完全完成后接口的注入,具体为:
所述的内容替换子模块进行界面对外接口类的实例化。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310655815.9A CN103605527A (zh) | 2013-12-06 | 2013-12-06 | 实现云计算应用间界面集成和统一样式展现的系统及方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310655815.9A CN103605527A (zh) | 2013-12-06 | 2013-12-06 | 实现云计算应用间界面集成和统一样式展现的系统及方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN103605527A true CN103605527A (zh) | 2014-02-26 |
Family
ID=50123757
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201310655815.9A Pending CN103605527A (zh) | 2013-12-06 | 2013-12-06 | 实现云计算应用间界面集成和统一样式展现的系统及方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103605527A (zh) |
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104021003A (zh) * | 2014-06-24 | 2014-09-03 | 歌尔声学股份有限公司 | 修改信息管理系统首页的方法及装置 |
CN104104679A (zh) * | 2014-07-18 | 2014-10-15 | 四川中亚联邦科技有限公司 | 一种基于私有云的数据处理方法 |
CN104317569A (zh) * | 2014-09-29 | 2015-01-28 | 浪潮通信信息系统有限公司 | 基于应用互联的快速服务聚合的方法 |
CN106293743A (zh) * | 2016-08-11 | 2017-01-04 | 上海泛微网络科技股份有限公司 | 一种移动建模系统及构建移动应用并实现跨平台发布的方法 |
CN107770208A (zh) * | 2016-08-16 | 2018-03-06 | 北京神州泰岳软件股份有限公司 | 一种基于iOS平台的应用集成方法和装置 |
CN109634579A (zh) * | 2018-10-29 | 2019-04-16 | 平安科技(深圳)有限公司 | 代码生成方法、装置、计算机装置及存储介质 |
CN110941779A (zh) * | 2019-11-20 | 2020-03-31 | 东软集团股份有限公司 | 加载页面的方法、装置、存储介质及电子设备 |
CN111596975A (zh) * | 2020-04-29 | 2020-08-28 | 五八有限公司 | 事件调用方法、装置、电子设备及存储介质 |
CN112217671A (zh) * | 2020-09-30 | 2021-01-12 | 青岛海信网络科技股份有限公司 | 基于拆分部署的前端微服务进行界面显示的方法及设备 |
CN112965717A (zh) * | 2021-03-22 | 2021-06-15 | 深圳市城市交通规划设计研究中心股份有限公司 | 多系统集成部署并保持界面统一的前端部署系统及方法 |
WO2024011899A1 (zh) * | 2022-07-13 | 2024-01-18 | 百度在线网络技术(北京)有限公司 | 微件的加载方法、装置、设备以及存储介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20090065416A (ko) * | 2007-12-17 | 2009-06-22 | 한국전자통신연구원 | 통합 소프트웨어 관리 시스템 및 방법 |
CN102479068A (zh) * | 2010-11-23 | 2012-05-30 | 大连兆阳软件科技有限公司 | 保证门户网络系统中应用自治性的网络应用软件集成方法 |
CN103034491A (zh) * | 2012-12-06 | 2013-04-10 | 国电南瑞科技股份有限公司 | 一种电力系统界面集成的实现系统及其实现方法 |
CN103136101A (zh) * | 2012-12-31 | 2013-06-05 | 博彦科技(上海)有限公司 | 软件自动化测试统一运营平台 |
CN103186613A (zh) * | 2011-12-30 | 2013-07-03 | 大连天维科技有限公司 | 影视资源聚合系统 |
-
2013
- 2013-12-06 CN CN201310655815.9A patent/CN103605527A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20090065416A (ko) * | 2007-12-17 | 2009-06-22 | 한국전자통신연구원 | 통합 소프트웨어 관리 시스템 및 방법 |
CN102479068A (zh) * | 2010-11-23 | 2012-05-30 | 大连兆阳软件科技有限公司 | 保证门户网络系统中应用自治性的网络应用软件集成方法 |
CN103186613A (zh) * | 2011-12-30 | 2013-07-03 | 大连天维科技有限公司 | 影视资源聚合系统 |
CN103034491A (zh) * | 2012-12-06 | 2013-04-10 | 国电南瑞科技股份有限公司 | 一种电力系统界面集成的实现系统及其实现方法 |
CN103136101A (zh) * | 2012-12-31 | 2013-06-05 | 博彦科技(上海)有限公司 | 软件自动化测试统一运营平台 |
Non-Patent Citations (3)
Title |
---|
代闻: "面向web2.0聚合应用的浏览器安全机制研究", 《中国优秀硕士学位论文全文数据库 信息科技辑》 * |
张夏天: ""Ajax Web应用的编程模型研究和应用框架实现"", 《中国优秀硕士学位论文全文数据库 信息科技辑》 * |
车树炎 等: "反向代理技术在高校网站系统中的应用研究", 《电脑编程技巧与维护》 * |
Cited By (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104021003A (zh) * | 2014-06-24 | 2014-09-03 | 歌尔声学股份有限公司 | 修改信息管理系统首页的方法及装置 |
CN104104679A (zh) * | 2014-07-18 | 2014-10-15 | 四川中亚联邦科技有限公司 | 一种基于私有云的数据处理方法 |
CN104104679B (zh) * | 2014-07-18 | 2017-07-11 | 四川中亚联邦科技有限公司 | 一种基于私有云的数据处理方法 |
CN104317569A (zh) * | 2014-09-29 | 2015-01-28 | 浪潮通信信息系统有限公司 | 基于应用互联的快速服务聚合的方法 |
CN106293743A (zh) * | 2016-08-11 | 2017-01-04 | 上海泛微网络科技股份有限公司 | 一种移动建模系统及构建移动应用并实现跨平台发布的方法 |
CN107770208A (zh) * | 2016-08-16 | 2018-03-06 | 北京神州泰岳软件股份有限公司 | 一种基于iOS平台的应用集成方法和装置 |
CN107770208B (zh) * | 2016-08-16 | 2020-11-20 | 北京神州泰岳软件股份有限公司 | 一种基于iOS平台的应用集成方法和装置 |
CN109634579A (zh) * | 2018-10-29 | 2019-04-16 | 平安科技(深圳)有限公司 | 代码生成方法、装置、计算机装置及存储介质 |
CN109634579B (zh) * | 2018-10-29 | 2023-08-22 | 平安科技(深圳)有限公司 | 代码生成方法、装置、计算机装置及存储介质 |
CN110941779B (zh) * | 2019-11-20 | 2023-06-30 | 东软集团股份有限公司 | 加载页面的方法、装置、存储介质及电子设备 |
CN110941779A (zh) * | 2019-11-20 | 2020-03-31 | 东软集团股份有限公司 | 加载页面的方法、装置、存储介质及电子设备 |
CN111596975A (zh) * | 2020-04-29 | 2020-08-28 | 五八有限公司 | 事件调用方法、装置、电子设备及存储介质 |
CN111596975B (zh) * | 2020-04-29 | 2021-07-16 | 五八有限公司 | 事件调用方法、装置、电子设备及存储介质 |
CN112217671B (zh) * | 2020-09-30 | 2022-12-27 | 青岛海信网络科技股份有限公司 | 基于拆分部署的前端微服务进行界面显示的方法及设备 |
CN112217671A (zh) * | 2020-09-30 | 2021-01-12 | 青岛海信网络科技股份有限公司 | 基于拆分部署的前端微服务进行界面显示的方法及设备 |
CN112965717A (zh) * | 2021-03-22 | 2021-06-15 | 深圳市城市交通规划设计研究中心股份有限公司 | 多系统集成部署并保持界面统一的前端部署系统及方法 |
WO2024011899A1 (zh) * | 2022-07-13 | 2024-01-18 | 百度在线网络技术(北京)有限公司 | 微件的加载方法、装置、设备以及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103605527A (zh) | 实现云计算应用间界面集成和统一样式展现的系统及方法 | |
CN111737032B (zh) | 一种基于微内核系统的子程序运行方法、装置和电子设备 | |
US11861334B2 (en) | Providing communication between a client system and a process-based software application | |
US9696972B2 (en) | Method and apparatus for updating a web-based user interface | |
US11635974B2 (en) | Providing a different configuration of added functionality for each of the stages of predeployment, deployment, and post deployment using a layer of abstraction | |
CN106997298B (zh) | 一种应用资源获取方法及装置 | |
US20210208854A1 (en) | System and method for enhancing component based development models with auto-wiring | |
CN103927253A (zh) | 多浏览器兼容性测试方法及系统 | |
CN104317591A (zh) | 一种基于OSGi的web界面框架系统及web业务处理方法 | |
CN103645951A (zh) | 一种跨平台的移动数据管理系统及其方法 | |
CN104573066A (zh) | 页面复用方法及装置 | |
Asensio et al. | Emulating home automation installations through component-based web technology | |
Nastic et al. | SDG-Pro: a programming framework for software-defined IoT cloud gateways | |
CN102664952B (zh) | 一种对嵌入式设备集群管理及监控的方法 | |
CN115794093A (zh) | 一种基于多应用融合的微前端实现方法 | |
KR101330559B1 (ko) | 자바스크립트기반 웹-클라이언트 어플리케이션 프레임워크 장치와 상기 프레임워크 장치를 이용한 웹 컨텐츠 처리 방법 및 이를 구현할 수 있는 컴퓨터로 읽을 수 있는 기록 매체 | |
CN114661375A (zh) | 应用集成方法及装置 | |
Prehofer et al. | Modeling restful web of things services: Concepts and tools | |
US10324692B2 (en) | Integration for next-generation applications | |
Miravet et al. | Framework for the declarative implementation of native mobile applications | |
US20160170739A1 (en) | Alter application behaviour during runtime | |
CN103870280A (zh) | 基于flex与jsp的网页无缝结合处理方法 | |
JP7014960B2 (ja) | 情報処理装置、サーバ、その処理方法及びプログラム | |
US11593132B1 (en) | Snapshot capture of computing device user interfaces | |
CN116149639A (zh) | 一种组件开发的方法、装置、电子设备和存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for 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: 20140226 |