CN100585598C - 用于更新portlet信息的方法和系统 - Google Patents

用于更新portlet信息的方法和系统 Download PDF

Info

Publication number
CN100585598C
CN100585598C CN200710136900A CN200710136900A CN100585598C CN 100585598 C CN100585598 C CN 100585598C CN 200710136900 A CN200710136900 A CN 200710136900A CN 200710136900 A CN200710136900 A CN 200710136900A CN 100585598 C CN100585598 C CN 100585598C
Authority
CN
China
Prior art keywords
portlet
data
version
client
data source
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.)
Expired - Fee Related
Application number
CN200710136900A
Other languages
English (en)
Other versions
CN101114302A (zh
Inventor
罗马利亚·H.·弗洛里斯
詹姆斯·P.·艾普亚德
詹森·萨尔斯多
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.)
Snap Inc
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 CN101114302A publication Critical patent/CN101114302A/zh
Application granted granted Critical
Publication of CN100585598C publication Critical patent/CN100585598C/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/954Navigation, e.g. using categorised browsing
    • 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/904Browsing; Visualisation therefor

Landscapes

  • Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Remote Sensing (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

用于更新portlet信息的方法和系统。可通过首先识别出在客户端上呈现的一个或多个portlet来更新portlet信息。每个portlet可包括自远端数据源反复进行更新的界面控件。对于每个portlet,都可建立界面控件的呈现和隐藏版本。每个portlet都可从数据源获取数据,并使用该数据更新界面控件的隐藏版本。可使用所获取的数据更新控件的隐藏版本。更新隐藏版本后,将隐藏版本与呈现版本进行切换。每个portlet可具有portlet刷新率,可重复进行获取数据,更新隐藏版本,和将隐藏版本与呈现版本进行切换的步骤,以满足portlet刷新率。

Description

用于更新portlet信息的方法和系统
技术领域
本发明涉及Web门户和portlet(门户组件)处理的领域,更具体而言,涉及通过对控件的隐藏版本进行更新,然后将隐藏版本与呈现版本进行切换,以此对portlet界面控件进行更新,从而减少闪烁及其他可能更新问题。
背景技术
Web门户是提供大量资源和信息(例如,电子邮件、搜索引擎、广告、用户专用报告、个性化联系和任务管理功能、定制新闻馈送、本地气象等)的Web站点或服务。Web门户可包括多个Webportlet。每个Web portlet可为向门户用户显示来自指定资源的信息的可重用Web组件,该指定资源可不同于为门户提供信息的资源。在门户内的portlet的设置、在门户内的信息呈现、该呈现的响应性,以及其他用户感受因素都构成门户的用户体验。
当使用界面控件(例如,刻度盘(dial)、图表、收报机(ticker)等)呈现数据时,经常会增强用户体验。当用户能够定制用于对重要情形提供提醒的控件和/或能够选择个别控件来提取其中包含的信息时,情况尤为如此。因此,在portlet内的控件能够向用户呈现实时更新。用户能够快速获悉控件传递的信息,并能够检测重要异常,并以适宜方式进行响应。
遗憾的是,用于更新portlet信息的传统方法可导致众多实际问题,例如,闪烁。在多个频繁更新的界面控件紧密相邻存在,且每个都与其自身portlet相关联时,经常出现闪烁。每个控件都需要进行不断的数据更新(例如,每1至10秒)、更新处理,和用于显示数据更新的控件视觉刷新。控件更新和相关处理的频率通常与其他portlet的其他控件更新无关。另外,每个控件通常由多个元件(例如,图表条(chart bar)以及值和/或刻度盘位置)组成,其中,可按照接收元件具体更新的顺序对可视元件进行处理。当出现更新和处理延迟时,有时对一部分控件元件进行更新,而对不同部分的控件元件不进行更新,这导致了混乱的视觉体验。
由于为每个portlet通常使用单个独立的进程,当portlet的数量增大时问题会逐渐升级。如果在与刷新界面控件所需时间量有关的同一时帧内进行多个数据请求(与不同进程相关),则可发生这些请求的串行化。该问题表现为,当在为控件建立的刷新率期间内不执行控件刷新时,portlet内的可视控件时常出现故障,并跳过一个或多个更新。不是对控件进行较平滑的刷新,而是控件显得从一步到另一步发生“跳跃”,这导致用户产生心烦意乱和毫无兴趣的体验。在极端情形中,portlet中出现的数据更新问题可使系统超负荷,并导致portlet或Web浏览器完全锁定。
图1显示出被执行用于使客户端设备利用与一个或多个portlet相链接的一个或多个数据源产生对于该门户的用户体验的基本交互。从图1显然可知,portlet的更新彼此无关地发生,其中每个portlet为更新而经常轮询数据源。为更新而经常轮询和逐个portlet地进行的响应接收可迅速使系统或通信设施过载到这样的程度,即,使数据更新受到延迟,出现闪烁、portlet显得停顿以及出现锁定,从而使用户对门户的总体体验效果变差。尽管图1假设portlet所使用的数据源是面向服务体系结构(SOA)112的一部分,如图1所示portlet通信模式通常应用于portlet-数据源通信,但不限于特定软件体系结构,例如SOA 112。
如图所示,图1所示客户端102 portlet 106和108能够利用JAVASCRIPTS请求刷新portlet 106-108。门户服务器104能够创建对检索数据进行处理以便更新门户104的进程。portlet 106-108能够从SOA 112的各种组件检索数据。每个portlet 106-108独立地进行等效更新过程。例如,客户端102请求刷新在所选门户104中的信息。门户104将绘制在portlet 106或108中的界面控件。该绘制可需要从portlet进程获得数据值,该进程可从SOA 112获得信息。SOA 112向公共portlet进程回送响应,将其发送到请求portlet106或108,请求portlet 106或108将数据发送到门户104,门户104在客户端102上适当绘制/呈现最新信息。
发明内容
本发明批露了使用portlet控件的多个版本(呈现出一个版本,通常隐藏一个或多个其他版本)的门户控件更新解决方法。可使用从数据源获取的数据更新控件的隐藏版本。当完全更新了隐藏版本时,可将该版本与当前呈现版本进行切换。从而,平滑进行对于每个portlet控件的更新,而不会出现闪烁。该方法可利用客户端交互引擎来协调portlet更新。交互引擎可为并发获取、绘制和切换交互提供线程化环境,从而避免出现传统portlet更新技术出现的串行化问题。
此处所提出的方法可作为用于在portlet中呈现实时信息的高度可伸缩解决方案的一部分。例如,在一个实施例中,交互引擎与数据源之间的通信可通过能够局部高速缓存来自数据源的信息并对其进行处理的portlet服务器来实现。使用门户服务器可使实时信息离终端用户更近,因此,缩短数据检索时延,并可使客户端与数据源之间不必要和/或冗余的通信量最小。此外,门户服务器可与面向服务体系结构(SOA)进行交互,其中,在服务提供者(数据源)与门户服务器之间建立Web服务。可使用Web服务传递数据更新。在一个所考虑到的配置中,门户服务器可高速缓存从数据源异步获得的更新信息,并能够通过该高速缓存将更新信息直接提供给请求portlet。
可根据与此处所给出的材料相一致的多个方面实现本发明。例如,本发明的一个方面可包括用于更新portlet信息的方法。在该方法中,可通过首先识别出在客户端上呈现的一个或多个portlet来更新portlet信息。每个portlet可包括自远端数据源迭代进行更新的界面控件。对于每个portlet,都可建立界面控件的呈现和隐藏版本。每个portlet都可从数据源获取数据,并使用该数据更新界面控件的隐藏版本。可使用所获取的数据更新控件的隐藏版本。更新隐藏版本后,将隐藏版本与呈现版本进行切换。每个portlet可具有portlet刷新率,可重复进行获取数据,更新隐藏版本,和将隐藏版本与呈现版本进行切换的步骤,以满足portlet刷新率。在一个实施例中,portlet处理applet和AJAX脚本可处理对于客户端的portlet的更新。
本发明的另一方面可包括用于更新portlet的第二方法,其包括识别出在portlet内绑定到数据源的界面控件的步骤。可建立界面控件的两个版本,一个是在客户端上显示的前景版本,另一个是隐藏的背景版本。可显示出界面控件的前景版本。可从数据源获取数据更新。可根据数据更新对背景版本进行更新。然后将背景版本与前景版本进行切换。可显示出包括有数据更新的新前景版本界面控件。
本发明的另一方面可包括用于更新portlet信息的系统。该系统可包括用于处理客户端的多个portlet更新的交互引擎。每个portlet都可包括界面控件,界面控件的呈现版本,和界面控件的隐藏版本。可从数据源对界面控件迭代进行更新。界面控件的呈现版本可为呈现给客户端用户的版本。可由自数据源接收的数据对隐藏版本直接进行更新。在进行更新之后以及从数据源获取新更新之前,可将隐藏版本与呈现版本进行切换。可对不同portlet应用不同刷新率。
应该注意,可将本发明的各个方法实现为用于控制计算设备实现此处所述功能的程序,或用于使计算设备执行与此处所披露步骤相对应的处理的程序。可通过在磁盘、光盘、半导体存储器或任何其他记录介质中存储该程序来提供该程序。此外,还可将程序提供为通过载波传递的数字编码信号。所述程序可为单个程序或可实现为多个子程序,其中,每个子程序在单个计算设备内进行交互,或者以分布式方式通过网络控件进行交互。
还应注意,此处所述的方法还可以是,至少通过服务代理和/或由服务代理操纵的机器根据服务请求执行的方法。
附图说明
附图中示出优选实施例,不过,应该理解,本发明并不限于所示具体布置和装置。
图1示出被执行用于使客户端设备利用与一个或多个portlet相链接的一个或多个数据源产生对于该门户的用户体验的基本交互;
图2表示,根据此处所披露本发明布置的实施例,用于更新自数据源获得的portlet信息的系统示意图;
图3表示,根据此处所披露本发明布置的实施例,包括有门户服务器并用于更新自数据源获得的portlet信息的系统的示意图;
图4表示,根据此处所披露本发明布置的实施例,包含有多个portlet,且由门户网关聚集多个portlet所需信息的图形用户接口(GUI);
图5表示,根据此处所披露本发明布置的实施例,用于更新portlet的系统示意图;
图6表示,根据此处所披露本发明布置的实施例,展示出将SOA基础设施扩展到包含有门户服务器的系统示意图;
图7表示,根据此处所披露本发明布置的实施例,初始化门户网页所需的部件和交互的流程图;
图8表示,根据此处所披露本发明布置的实施例,初始化门户网页所需的部件和交互的流程图;
图9表示,根据此处所披露本发明布置的实施例,初始化门户网页所需的部件和交互的流程图;
图10表示,根据此处所披露本发明布置的实施例的方法流程图,其中,服务代理能够对在隐藏portlet控件与呈现portlet控件之间进行切换以更新portlet的系统进行配置。
具体实施方式
图2表示,根据此处所披露本发明布置的实施例,用于更新自数据源获得的portlet信息的系统200的示意图。在系统200中,客户端210可包括portlet 212,214,216和218,通过交互引擎220对它们进行更新。每个portlet 212-218可绑定到数据源240,并使用数据源240刷新portlet 212-218内包含的界面控件。portlet 212-218的每个界面控件均可具有多个版本,包括呈现版本和至少一个隐藏版本。交互引擎220可使用从数据源240获得的数据对隐藏版本进行更新,然后,将其与呈现版本交换。然后,可迭代重复该处理。通过首先构建新的完全最新版本的最新界面控件,然后将最新版本与过期版本控件交换,消除和/或降低闪烁效应。
界面控件可为图形控件,例如,概括有信息的刻度盘、图表、滑动条、表格、媒体流控件、收报机等。界面控件还可包括音频控件,例如话音呈现和处理控件,或从数据源240接收连续信息更新的任何其他控件。在一个实施例中,界面控件可与包含信息的其他portlet交互式链接,所述portlet例如文字概述窗口或细节部分,根据用户选择呈现出与控件有关的数据值。
客户端210可为能够呈现Web内容的计算设备。客户端210可包括但不限于桌面型计算机、服务器、移动电话、平板计算机(tablet computer)、个人数字助理(PDA)、数字媒体播放器等。门户可为用作为到Web上其他目的地的起始点的Web站点或网关。门户提供用于为用户聚集信息以提供用户体验的机制,其可根据用户偏好进行定制。门户可包含从多个数据源240获得的内容。
数据源240可为包括有用于向一个或多个portlet 212-218传递和提供内容的软件的计算设备。不同的portlet 212-218可使用不同数据源240。单个portlet 212-218也可从多个数据源240收集信息,例如,当portlet内的不同控件与不同数据源绑定在一起时。数据源240可与网际(IP)地址和/或域名相关联,网际(IP)地址和/或域名由相关联的portlet 212-218引用。数据源240可提供Web网页和/或可作为一个或多个Web服务的提供者。
交互引擎220可包括用于与服务器进行交互的客户端应用代码。交互引擎220可与Web网页(例如,包括portlet 212-218的门户)相关联。在一个实施例中,可将交互引擎220实现为在客户端210上的Web应用上下文中运行的符合J2EE的软件组件。例如,交互引擎220可包括applet,JAVASCRIPT,异步JAVASCRIPT和XML(AJAX)等。
交互引擎220可处理针对多个portlet 212-218的更新请求。交互引擎220可进行多线程操作,且每个线程可以与portlet 212-218数据更新操作相关联。例如,由交互引擎220引起的不同线程可以与更新请求230和更新请求234相关联。每个更新请求230和234可以是用于从数据源240接收数据的请求,其用于对一个或多个portlet212-218进行更新。可在响应232和236中对交互引擎220提供数据更新。
在一个实施例中,交互引擎220可包括数据获取引擎222,portlet处理引擎224,和/或版本切换引擎226。交互引擎220还可以访问本地数据存储器227,其可存储为交互引擎220所用的信息,诸如示意表格228和229中所示的数据。
数据获取引擎222可处理用于从数据源240获得信息的具体事项。例如,数据获取引擎222可确定针对每个portlet 212-218的数据请求,并能够确定所要求的刷新速率,刷新率可以因portlet的不同而不同。用于实时和准实时数据的典型更新速率可以在一(1)和十(10)秒之间。当从数据源240流出音频/视频流时,每个更新可包括持续时间足够长的媒体内容数据包,以保持连续播放,直至在后一个更新周期中获得下一数据包。
portlet处理引擎224可执行将所需数据包含到portlet控件中的必要操作。portlet处理引擎224可以,例如,执行操作以将原始数据转换成刻度盘界面控件的刻度盘设置。然后,portlet处理引擎224可以可视化呈现在界面控件隐藏版本中的最新刻度盘界面控件。因此,portlet处理引擎224可使用来自数据获取引擎222的数据,在将控件的隐藏版本呈现给用户之前,对控件的该版本进行更新。portlet处理引擎224还可以将用户特定设置包含到界面控件中。
版本切换引擎226可对控件的隐藏版本与控件的呈现版本进行切换。切换可以在对隐藏控件已进行数据更新之后进行。出于简单起见,本说明书中给出的示例表示出控件的两个版本,即隐藏和呈现版本。然而,本发明不局限于此,可存在多个隐藏版本。在此情形中,版本切换引擎226可建立版本的有序队列,而处于队列“顶部”的版本可与呈现版本交换。
可使用在表格228和229中包含的数据来说明工作时的系统200。如表格228中所示,每个portlet 212-218可与一个呈现版本(版本_P)和一个隐藏版本(版本_H)相关联。每个portlet 212-218还可以具有特征刷新时间,诸如5,2,4和8秒,如图所示。可使用基于系统时钟的下一刷新时间来确保按照刷新率对portlet数据进行更新。
如表格229中所示,portlet控件(C001和C002)的每个版本可具有多个元件(E123,E124,E125和E126)。每个portlet版本(P212_A)可包括一个或多个控件(C001-C002)。此外,每个元件可具有相关状态(S1-S2)。状态可表示portlet处理引擎224是否已经基于自数据获取引擎222获得的新更新而成功对元件进行了更新。一旦完成所有更新,如状态所示,版本切换引擎226即可将最新更新且当前隐藏的版本与过期且当前显示出的版本进行切换。
例如,在portlet处理引擎224已经使用新信息更新了P212_B之后,版本切换引擎226可交换P212_B与P212_A,从而使P212_B成为呈现版本,P212_A成为隐藏版本。使用从数据源240接收到的新数据,重复这一循环。
应当理解,可使用多种技术来实现界面控件的呈现版本和隐藏版本。例如,可使用超文本标记语言(HTML)DIV标记在HTML文档中为不同版本的界面控件建立各自的部分。可将界面控件的隐藏版本设置在相关portlet 212-218的背景中。可将界面控件的呈现版本设置在相关portlet 212-218的前景中。
图3表示,根据此处所披露本发明布置的实施例,包括有门户服务器320并用于更新自数据源获得的portlet信息的系统300的示意图。门户服务器320可处理对于客户端310,312和314的信息更新,每个信息更新在一个或多个portlet P1-P6内呈现信息。每个客户端310-314可具有交互引擎311,313和315,其用于执行更新,如参照系统200中所述。交互引擎311,313和315可使用本地数据存储器318存储用于对portlet P1-P6进行更新的数据。可从一个或多个数据源340,342和343获得portlet P1-P6信息。网络352和354可将客户端310-314和数据源340-343与门户服务器320进行通信链接。
门户可包括一个或多个portlet P1-P6。每个portlet P1-P6可为可插用户界面组件。不同portlet P1-P6可呈现自不同数据源340-343得到的内容。例如,portlet P1和P2可呈现源自数据源340的数据。portlet P3和P4可呈现源自数据源342的数据。portlet P5和P6可呈现源自数据源343的数据。
可根据面向服务体系结构(SOA)344对数据源343进行配置。SOA 344可提供用于将任何类型的信息消费者与任何业务过程或数据提供者348相结合的一致、可重用方法。在SOA 344中,服务可为具有良好定义界面的自包含、可重用软件模块,并可独立于应用程序和运行应用程序的计算平台。数据提供者348可为对一个或多个portlet P1-P6更新数据的数据提供者。数据可通过服务网关346在服务提供者348与网络354之间传递。
门户服务器320能够提供数据,并能够起到客户端310-314与数据源340-343之间通信中介的作用。门户服务器320的一个功能是向交互引擎311-315中合适的交互引擎提供实时信息,此信息可能需要经常进行更新。为便于更新,门户服务器320能够将来自数据源340-343的信息高速缓存在数据存储器328中。可使用高速缓存的数据直接对数据更新请求进行响应。门户服务器320能够反复对数据存储器328中的信息进行更新,以便确保数据不过时。
例如,客户端310和312可能需要进行对于门户P1的数据更新,这通常从数据源340直接获得。反之,门户服务器320可从数据源340周期性和/或间歇性地获得对于portlet P1的更新,并将更新结果设置在数据存储器328中。只要客户端310或312需要对P1进行更新,就可直接从数据存储器328直接获得这些更新。这些设置可将数据更新推进得与客户端310-314更近,并能够使数据源340和网络354处理的数据更新请求最少。从而,客户端310-314能够体验到更快响应时间,同时还降低了在网络354和数据源340上的负荷。该方法是高度可伸缩的,而且使实时信息离终端用户更近,因此,减小了数据检索的时延。
在另一示例中,门户服务器320能够合并公共类型的实时信息。例如,门户P3和P4能够从数据源342获得更新信息。这些数据更新可以针对相关信息的。门户服务器320能够将portlet P3和P4所需的信息聚集成单个数据集,它可比与P3和P4相关联的非聚集数据集具有更粗的粒度级。然后,门户服务器320能够间歇式地检索对于聚集数据集的数据更新,其放置在数据存储器328中。可使用存储在数据存储器328中的聚集数据集信息直接应答自portlet P3和P4的数据请求。
在又一示例中,门户服务器320能够从服务提供者348检索针对portlet P5和P6的数据。对于portlet P5和/或P6,当首次从客户端310-314接收数据更新时,门户服务器320可建立用于从提供者348检索必要信息的新数据获取服务。该服务能够反复对信息进行更新,并将最新信息设置在数据存储器328中。从而,门户服务器320能够直接使用存储在数据存储器328中的最新信息对与portlet P5和P6相关的更新请求进行响应。只要一个或多个客户端310-314需要进行与portlet P5和/或P6相关的数据更新,就会在门户服务器320与提供者348之间保持相关服务,从而确保数据不过时。
门户服务器320可包括注册处理程序322、管理处理程序324、数据处理程序326和数据存储器328。注册处理程序322能够注册每个portlet P1-P6所需的实时信息以及实时数据检索间隔的频率。注册处理程序322确保更新发生在门户服务器320与相关联的数据源340-343之间,以确保满足客户端310-314的频率要求。
管理处理程序324接收来自portlet P1-P6的数据请求,并对此进行响应。有必要时,管理处理程序324能够发起新数据获取进程,这在数据处理程序326中执行。另外,管理处理程序324能够管理聚集数据集与各个portlet P1-P6之间的关系,且portlet P1-P6基于聚集数据集接收数据更新。
数据处理程序326能够建立数据获取进程和/或线程,以便从数据源340-343获得指定类型的数据。数据处理程序326的数据获取进程可以与来自客户端310-314的数据请求同步和/或异步。如果是异步,则使用数据存储器328高速缓存检索的数据。
网络352和354可包括任何硬件、软件,以及传递在载波内编码的数据所必需的固件。可将数据包含在模拟或数字信号内,并通过数据或与语音信道传递。网络352和354可包括用于在计算设备部件间以及在集成设备部件与外围设备之间进行通信所需的本地部件和数据路径。网络352和354还可包括网络设备,例如,路由器、数据线、集线器和中间服务器,它们一起构成数据网络。网络还可包括基于电路的通信部件和移动通信部件,例如,电话交换机、调制解调器、蜂窝通信塔等。每个网络352和354都可包括基于线路和/或无线通信路径。
数据存储器318和328可为用于存储数字信息的物理或虚拟存储空间。数据存储器318和328可在物理上实现于任何类型的硬件内,这样的硬件包括但不限于磁盘、光盘、半导体存储器、数字编码塑性存储器、全息存储器,或任何其他记录介质。每个数据存储器318和328可为独立式存储部件以及由一个或多个物理设备形成的存储部件。另外,可将信息以各种方式存储在数据存储器318和328内。例如,可将信息存储在数据库结构内或可将其存储在文件存储系统的一个或多个文件内,其中,出于信息搜索目的,可以对或者不对每个文件进行索引。此外,数据存储器318和/或328可利用一个或多个加密机制,保护所存储的信息免受未授权访问。
图4表示,根据此处所披露本发明布置的实施例,包含有多个portlet,且由门户网关聚集多个portlet所需信息的图形用户接口(GUI)402和408。GUI 402显示出在进行数据聚集之前的门户,GUI 404显示出在聚集之后的同一门户。
门户可包括portlet 408,410,412,414,416和418,每个呈现出当前公司业绩统计数据。业绩统计数据使用不同的GUI控件呈现,这些控件包括刻度盘、图表、摘要、收报机等。GUI控件可用于帮助用户快速了解公司信息。用户可定制业绩统计数据和呈现控件以适合用户需求。控件均可包括隐藏版本和呈现版本,其中在进行更新后将隐藏版本与呈现版本进行交换。portlet 408-418中显示的信息可实时进行更新。当GUI控件所基于的业绩信息变化时,可自动更新该控件。
如图所示,portlet 408-416可将公司业绩信息呈现为一系列计量器(gauge)。portlet 418可显示出业绩图表。一般而言,在portlet 408-416中显示的每个计量器以及在门户418中显示出的图表将直接和独立与数据源链接。为使portlet 408-418信息保持最新,将需要多个实时信息流。每个portlet依赖于多个实时流可消耗大量计算资源,而且效率有些低。此外,将多个实时流用于每个portlet408-418造成可伸缩性问题,并可预计有数据时延。数据源与GUI402的用户之间的任何时延都可导致GUI控件闪烁,门户表现出“锁定”,并可出现用户注意到的降低总体用户体验的其他效应。通过使用门户服务器,如系统300中所示,由于门户服务器提供针对portlet 408-418的直接数据更新,可减少可伸缩性问题,并可降低时延。
通过将多个portlet所需的数据聚集成公共数据集,门户服务器还减少了不必要的通信量,以及增大基础设施可伸缩性,如在GUI404中所示。在GUI 404中,可为portlet 410-416创建一个聚集数据集420。不同数据集422可将与数据集420以及portlet 408和418相关联的数据聚集。一旦创建了数据集420或422,门户服务器可创建与用于对数据集420或422进行更新的数据源间的链路。该链路能够满足多个部件portlet和/或数据集的数据更新要求,以便使门户服务器与数据源之间的通信量最小。
假设用于portlet 408-418的GUI控件和其中包含的信息是基于可定义的数据超集(数据集422),而且,针对portlet 410-416的信息是基于可定义的数据超集(数据集420)。GUI控件的值可基于较固定数据(基线数据)与最新数据集420和/或422中包含的数据的组合。可将基线数据本地存储在客户端和/或门户服务器上,以便使对于数据源的不必要请求最少。同样,将(基线数据和或数据集420-422的)原始公司数据转换成GUI控件所需的值需进行的处理操作,可由客户端和/或门户服务器执行。
值得注意的是,门户服务器可确定对于每个portlet的数据要求,并能够确保使用网关注册处理程序以及交互引擎(如先前所述),以适当频率执行portlet到网关的更新。门户服务器的管理处理程序可在聚集数据集420-422与每个portlet 408-418,和/或注册处理程序针对各个portlet 408-418处理的进程之间进行协调。门户服务器的数据处理程序可确保以合适频率,反复执行数据源与网关之间的数据更新,以保持数据不过时。
图5表示,根据此处所披露本发明布置的实施例,用于更新portlet的系统500的示意图。系统500可包括客户端508,客户端508将门户服务器526用作为中间设备,以便通过企业服务总线530自企业服务总线获得企业数据。portlet 503-506是包括刻计量器界面控件的portlet,所述计量器界面控件呈现发送数据。portlet 507呈现提醒信息。通常利用经由总线530从企业数据源获取的数据对每个portlet 503-507进行更新。
对于portlet 503-507的刷新操作可由JAVASCRIPTS,AJAX脚本等触发,并可由本地交互引擎502处理。交互引擎502可与存储器内高速缓存(in-memory cache)509相关联,高速缓存509是用于存储更新portlet 503-507所需的信息的数据存储器。例如,高速缓存509可存储用于每个portlet 503-507的前景控件元件(可视或呈现元件)和背景控件元件(隐藏)。高速缓存509可通过指定数据源的URL来指定向portlet 503-507提供信息的数据源,如系统500所示。
引擎502可与门户服务器526相接口,门户服务器526与企业服务总线530相接口,从企业服务总线530获得更新数据。例如,可通过注册处理程序521注册每个portlet 503-507。可通过主处理程序524传递用于获取数据的请求,主处理程序524提供数据响应。主处理程序524可使用一个或多个数据处理程序522获得企业数据。每个数据处理程序522可使用本地高速缓存523和/或527,以确保以适当频率(如注册处理程序521所指定的)获得更新。
应该注意,每个portlet 503-507可注册不同的数据更新上下文,例如,对于portlet 503的上下文1(C1),对于portlet 504的上下文2(C2),对于portlet 505的上下文3(C3),对于portlet 506的上下文4(C4),对于portlet 507的上下文5(C5)。可由其相关上下文识别出不同的数据更新任务。不同类型的数据处理程序522可与不同类型的数据上下文相关联。例如,portlet 503-506可具有与发送(emission)相关联的上下文(C1-C4),发送由发送数据处理程序522进行处理。高速缓存或数据存储器523能够记录何时对每个上下文进行了最后更新和/或访问。在另一示例中,portlet 507可具有与提醒相关联的上下文(C5),提醒由提醒数据处理程序522进行处理。高速缓存或数据存储器527可记录何时对C5进行了最后更新和/或访问。
图6表示,根据此处所披露本发明布置的实施例,展示出将SOA基础设施630扩展620到包含有门户服务器626的系统600示意图。在系统600中,一个或多个客户端608可包括呈现企业数据的portlet。企业数据可从企业数据源获得。企业数据源可包括提供者636提供的数据,提供者636利用应用服务器635为企业提供应用数据。可将应用数据作为一个或多个Web服务628提供给门户服务器626。服务网关631可作为门户服务器626与SOA框架结构630之间的通信中介。可将门户服务器626有选择性地实现为门户服务器集群(未示出),以提供冗余,并在一个或多个门户服务器626失效时使得实现系统600的弹性操作。
通过Web服务628获得的企业信息可由门户服务器626存储在门户数据存储器625中。可根据建立的Web服务628不断更新在门户数据存储器625中的信息,以确保门户数据存储器628总包含最新信息。不断更新可进行得足够频繁,以便直接从数据存储器625向客户端608提供准确实时数据。
客户端608的每个portlet 603-607可利用交互引擎602与门户服务器626相接口。可使用数据存储器609存储指定用于对portlet603-607进行更新的数据源的信息,例如,相关联Web站点的URL。数据存储器609还可独立存储和跟踪portlet 603-607的前景(呈现)版本信息和背景(隐藏)版本信息。
客户端608可通过一个或多个边缘服务器(未示出)与门户服务器626进行通信。授权引擎(未示出)能够确保门户数据的安全。门户服务器626能够有可选地包括与特定客户端608相接口的用户体验引擎621。如图所示,用户体验引擎621可与注册处理程序(未示出)、主处理程序624和数据处理程序622通信链接。每个数据处理程序可与存储器高速缓存623和/或627相关联,存储器高速缓存623和/或627存储有数据更新频率信息。处理程序能够一起确保对在客户端608 portlet内呈现以及从提供者636获得的数据进行不断更新。
在一个实施例中,用户体验引擎621可为特定通信信道定制企业内容,例如,客户信道、员工信道、管理信道,和IT管理者信道等。通信信道还可与不同市场信道相连接,例如,店面系统、售货亭、电子零售Web站点等。因此,用户体验引擎621能够为不同前端系统定制自企业基础设施获得的企业数据流。将来自客户端608所使用的不同前端系统的企业数据按照这样的松耦合方式进行分段,可确保企业数据能够被不同的可分别定制的系统使用,而不会负面地影响后端系统。
应该注意,系统600的基本SOA基础设施630是用于提供将基于SOA的系统的简单、松耦合优点与集成技术的更传统方法进行组合的企业服务和数据的专用体系结构,其具体细节是其他发明方案的主题。可将基础设施630扩展620到包括门户服务器626的构思。
系统600表示本portlet增强方案的许多考虑到的实施例之一,和对于门户服务器626的一个考虑到的应用。不应将本发明理解为受限于系统600中所示的布置,在任何各种情形和系统中都可使用门户服务器626,如系统200、系统300以及本文献中所述。
为详细说明系统600,SOA基础设施630的服务网关631可提供对在客户端608上执行的信道应用的企业服务访问。服务网关631可负责接受来自本地应用服务器635的SOAP格式的XML请求。从而,可以发现每个请求的合适服务提供者636,并将该请求传递到合适的提供者636,从而根据需要将任何附加元数据添加到XML请求中。
这些变换通常是所有服务请求在其被服务提供者636接收之前必须已经执行的公共活动。服务网关631可作为执行这些功能以减少信道客户端608或应用程序的负担的中央部件。网关631可动态绑定到提供者,或通过良好定义的通信信道实现。服务网关631还可将绑定提供者数据存储在动态运行时刻高速缓存632内。门户631能够使用存储在动态运行时刻高速缓存632中的数据直接对门户服务器626的请求进行响应。提供者636能够从信息源接收数据更新,并可将其传递到绑定数据元件,例如,在动态运行时刻高速缓存632内的数据元件。所述方法可用于使动态运行时刻高速缓存632中的信息保持最新。
在未知服务请求的情形中,服务网关631可向集成服务提供者633请求绑定位置。集成服务提供者633可为针对所有有效服务请求的记录系统。一旦发现请求,就会将它传递到合适的端点。服务网关631可存储提供者636的位置,并直接绑定在随后的请求上。
服务目录634可为在线目录,其为企业和组织机构提供一致方式以描述可用服务、服务能力、所需界面参数和由所述服务导致的输出参数。目录634的服务可包括通过服务网关631可访问的所有服务。在一个实施例中,服务目录634可使用基于可扩展标记语言(XML)的Web服务目录。在服务目录634中指定的Web服务可使用Web服务描述语言(WSDL)进行描述。服务目录634可为统一描述发现和集成(UDDI)目录。
可使用示意性示例显示出系统600的内部工作。在一个示例中,portlet客户端可利用JAVASCRIPT或类似代码请求刷新portlet数据。引擎602能够接收请求,并能够管理对于客户端608的portlet 603-607更新细节。引擎602能够生成可通过边缘服务器传送到授权服务器的更新请求,授权服务器确保对请求客户端进行授权以访问门户服务器626。请求可由注册处理程序接收,注册处理程序使得能够实现实时信息类型的注册。注册处理程序能够触发主处理程序624创建用于从数据源获得最新数据的线程。主处理程序624的每个线程都可在数据处理程序622内创建相应数据更新线程。每个数据处理程序622线程能够通过SOA基础设施630不断和异步地检索数据。可将自数据处理程序622检索的数据设置在门户数据存储器625中。主处理程序624可通过引擎602根据需要为请求portlet 603-607提供更新信息。
在演示门户服务器弹性的另一示例中,客户端608的portlet 603可利用JAVASCRIPT请求引擎602更新portlet 603。客户端608已能够使其本身得以授权,从而,刷新请求能够通过边缘服务器和授权服务器到达指定门户服务器625。该先前使用的门户服务器625可能不可用,这可导致将刷新请求自动传递到备份节点。用于对包括接收请求的portlet的网页/门户进行处理的程序可在备份节点上进行初始化。可由对于处理程序622和624的处理程序线程进行执行。如果有的话,备份节点可直接获得来自门户存储器625的数据。对于备份节点所处理的portlet,数据处理程序622和相关线程可通过SOA基础设施630不断和异步地检索实时数据。通过备份节点,或在可用时,使用先前高速缓存的信息,或者使用通过SOA基础设施630获得的实时数据,可对刷新请求进行响应。如果原始门户服务器626变得可用,则可将用于对来自客户端608的portlet请求进行处理的任务从备份节点无缝切换到原始门户服务器626。
图7表示,根据此处所披露本发明布置的实施例,初始化门户网页所需的部件和交互的流程图700。具体而言,流程图700显示出客户端702与包括portlet 708和710的门户706之间的交互。客户端702侧的数据更新处理可由交互引擎进行管理,例如,applet或AJAX脚本。可使用包括注册处理程序720、主处理程序722和数据处理程序724和726的门户服务器,对每个portlet 708-710进行更新。
在流程图700中,客户端702可使用注册处理程序720对其本身进行注册。注册可对每个portlet 708-710以及每个portlet 708-710所需的数据类型进行初始化。一旦被注册,注册处理程序720就能够对未来请求的portlet上下文进行管理。当具体类型的客户端702发出首次刷新请求时,门户服务器能够对主处理程序722进行初始化。主处理程序722能够产生合适的进程和/或线程,例如在数据处理程序724中产生的获取线程。每个数据类型/数据上下文/刷新率组合可具有相关联的数据处理程序线程和/或进程。然后,portlet 708能够从主处理程序722检索数据,进而从对portlet 708提供服务的数据处理程序724获得最新数据。
当客户端702为不同类型更新发出另一刷新时,门户服务器能够再次对主处理程序722进行初始化。门户服务器与客户端702之间的通信可通过交互引擎进行,而与进行更新的portlet 708-710无关。主处理程序722能够再次为不同更新类型生成合适的数据获取线程/进程。例如,由数据处理程序726的进程可对新类型进行处理。然后,portlet 708可从主处理程序722检索数据,进而能从提供该类型数据的数据处理程序726获取最新数据。
图8表示,根据此处所披露本发明布置的实施例,初始化门户网页所需的部件和交互的流程图800。具体而言,流程图800表示当portlet做出以不同刷新率对同一类型信息的刷新请求时所需的交互。交互引擎,例如系统200的引擎220,能够处理客户端交互。
在流程图800中,客户端802能够通过注册处理程序820进行注册,注册处理程序820允许处理程序820管理关于未来请求的portlet上下文。可由客户端802发出具体类型的首次数据刷新请求。作为响应,门户组服务器可对主处理程序822进行初始化。主处理程序822能够使数据处理器824启动用于确保以预定频率从数据源获取数据的进程。然后,portlet 808能够从主处理程序822反复检索数据,主处理程序822进而从数据处理程序824接收所需数据。
portlet 810也可发出同一类型的刷新请求,其发送给主处理程序822。主处理程序822能够识别出存在现有进程以便为portlet 810获取所需信息。在一个实施例中,用于为portlet 808获取数据的进程可为检索聚集数据集的进程,该聚集数据集可用于满足多个portlet的数据要求。例如,由数据处理器824管理的先前创建的进程可获取如图4所示数据集420的数据,其中,portlet 808-810表示portlet 410-416的实例。一旦识别出现有进程,主处理程序822就能够确认现有进程的数据刷新率足够满足portlet 810的要求。否则,可适当调节现有数据获取进程的频率。portlet 810能够从主处理程序822检索数据更新,主处理程序822进而从数据处理程序824接收这些数据。
图9表示,根据此处所披露本发明布置的实施例,初始化门户网页所需的部件和交互的流程图900。流程图900显示出,数据处理程序924和926自数据源获取的数据可与来自客户端902的数据更新请求异步发生。例如,数据处理程序924和926可不断对本地数据存储器(如图3所示数据存储器328)进行更新。来自本地数据存储器的内容可用于对portlet请求进行响应。
在流程图900中,数据处理程序924和926能够向数据源(例如,提供者928)发出数据请求(例如,SOAP请求)。在一个实施例中,数据处理程序924-926可使用轮询方法获得信息,其中,可由客户端902要求来确定轮询期间。轮询期间必须等于或小于客户端902所需的最短数据刷新期间。
在另一实施例中,数据处理程序924-926可使用预订方法。也就是,可在数据处理程序924-926与数据提供者928之间建立数据预订。只要数据提供者928检测到对于预定内容的更新,就将该更新传递到合适的数据处理程序924-926。然后,将更新进行本地缓存。
只要门户904更新处理需要刷新portlet 906数据,就可对主处理程序922进行查询。主处理程序922能够向数据处理程序924请求响应数据,数据处理程序924使用本地高速缓存的信息进行响应。同样,对于不同数据上下文,不同portlet 906能够将请求提交给主处理程序922,这由处理程序926负责处理。主处理程序922能够从处理程序926请求响应数据,处理程序926可使用先前高速缓存的数据进行响应,如所示。
图10表示,根据此处所披露本发明布置的实施例的方法1000流程图,其中,服务代理能够对在隐藏portlet控件与呈现portlet控件之间进行切换以更新portlet的系统进行配置。方法1000可在系统200的环境中执行。
方法1000可始于步骤1005,此时客户启动服务请求。服务请求可为要求服务代理对刷新portlet的软件系统进行配置或故障诊断的请求。系统可从数据源获取数据,并使用该数据对portlet控件的隐藏版本进行更新,然后将其与该控件的呈现版本进行交换。该系统还可利用此处详细描述的门户服务器。在步骤1010中,可选择人工代理对服务请求进行响应。在步骤1015,人工代理能够对客户的当前系统进行分析,并提出解决方法。在步骤1020中,人工代理能够对客户的系统进行配置,以便该系统能够刷新portlet。人工代理例如能够对客户的系统进行配置,以便利用此处所述的portlet更新引擎。如果系统包括门户服务器,则门户服务器可为多个客户端提供服务,并可被设置成集群以确保弹性。此外,门户服务器可从任何数据源获得用于刷新portlet的信息,这样的数据源包括SOA数据提供者。在步骤1025中,人工代理能够完成服务活动。
应该理解,尽管人工代理可物理上到达本地位置来调整客户的计算机或门户服务器,然而物理到达可以是不必要的。例如,必要的话,人工代理可使用远程代理对客户的计算机系统或门户服务器进行远程操作。
本发明可采用硬件、软件,或硬件和软件的组合来实现。本发明可采用集中方式在一个计算机系统中实现,或采用分布式方式实现,在此其中,不同元件分布在数个互连的计算机系统上。可适于使用用于实现此处所述方法的任何种类的计算机系统或其他装置。硬件和软件的典型组合可为具有计算机程序的通用计算机系统,当将加载以及执行所述程序时,控制计算机系统以便执行此处所述的方法。
还可将本发明包含在计算机程序产品中,其包括用于实现此处所述方法的实现方式的所有特征,当将其载入到计算机系统中时,能够执行这些方法。在本文中的计算机程序以任何语言、代码或表示方式表示出的任何指令集表示,用于使具有信息处理能力的系统直接执行特定功能,或在经过以下任一或两者处理之后执行:a)转换到另一语言、代码或表示;b)以不同材料形式生成。
在不偏离本发明精神和基本属性的条件下,可采用其他方式包含本发明。因此,将参照后面的权利要求,而非前面的说明书部分,表示出本发明的范围。

Claims (20)

1.一种用于更新门户组件portlet的方法,包括:
识别出在portlet内绑定到数据源的界面控件;
建立界面控件的两个版本,一个是在客户端上显示的前景版本,另一个是隐藏的背景版本;
显示出界面控件的前景版本;
通过数据获取引擎从数据源获取数据更新;
通过portlet处理引擎根据数据更新对背景版本进行更新;
通过版本切换引擎将背景版本与前景版本进行切换;
显示界面控件的新前景版本,其中,所述新前景版本包括数据更新。
2.根据权利要求1的方法,还包括:
根据portlet刷新率,迭代重复获取、更新、切换和显示新前景版本的步骤。
3.根据权利要求2的方法,其中,portlet刷新率在一秒和十秒之间。
4.根据权利要求1的方法,其中,包含portlet的Web网页包括多个portlet,所述多个portlet包括第二portlet;所述方法还包括:
识别出在第二portlet内绑定到第二数据源的第二界面控件;
建立第二界面控件的两个版本,一个是在客户端上显示的第二前景版本,另一个是隐藏的第二背景版本;
显示在第二portlet内图形界面控件的第二前景版本;
从第二数据源获取第二数据更新;
根据第二数据更新对第二背景版本进行更新;
将第二背景版本与第二前景版本进行切换;以及
显示第二界面控件的新第二前景版本,其中,所述新第二前景版本包括第二数据更新。
5.根据权利要求4的方法,还包括:
根据第二portlet刷新率,迭代重复获取、更新、切换和显示第二portlet的新第二前景版本的步骤,其中,portlet刷新率不同于第二portlet刷新率。
6.根据权利要求1的方法,其中,界面控件为具有基于从数据源获得的数据的设置的刻度盘。
7.根据权利要求1的方法,还包括:
向客户端提供交互引擎;以及
根据portlet刷新率,交互引擎反复执行获取、更新和切换步骤。
8.根据权利要求7的方法,其中,portlet为包括多个portlet的Web网页的一部分,且其中,交互引擎支持多个portlet。
9.根据权利要求8的方法,其中,数据源为面向服务体系结构的服务提供者,其中,将数据更新提供作为在服务提供者和与面向服务体系结构相接口的门户服务器之间建立的Web服务的一部分,其中,交互引擎与门户服务器相接口。
10.根据权利要求1的方法,其中,权利要求1的所述步骤由至少一个机器根据具有可由所述至少一个机器执行的多个代码段的至少一个计算机程序来执行。
11.根据权利要求1的方法,其中,权利要求1的步骤由服务代理和所述服务代理操纵的计算设备中的至少一个来执行,响应于服务请求执行所述步骤。
12.一种用于更新门户组件portlet信息的方法,包括:
识别出在客户端上呈现的多个portlet,其中,每个portlet包括自与该portlet绑定的至少一个远程数据源迭代更新的界面控件;
对于每个portlet,建立界面控件的呈现版本和界面控件的隐藏版本;
对于每个portlet,通过数据获取引擎从与该portlet绑定的远程数据源获取数据;
响应于接收所获取的数据,通过portlet处理引擎使用所获取的数据更新界面控件的隐藏版本;
在对隐藏版本进行更新后,通过版本切换引擎将隐藏版本与呈现版本进行切换;以及
根据portlet刷新率,重复获取、更新和切换步骤。
13.根据权利要求12的方法,其中,所述portlet中的特定portlet具有不同的portlet特定刷新率。
14.根据权利要求13的方法,还包括:
在客户端上建立交互引擎;其中,交互引擎管理客户端的获取、更新和切换步骤,它包括对每个portlet执行所述步骤,且其中,将交互引擎实现为applet、JAVASCRIPT以及AJAX脚本中的至少之一。
15.根据权利要求14的方法,其中,交互引擎与门户服务器相接口,其中,门户服务器的位置远离客户端以及至少一个远程数据源,且其中,门户服务器充当客户端与至少一个远程数据源之间的通信中介。
16.根据权利要求15的方法,其中,数据源是面向服务体系结构的服务提供者,其中,将数据更新提供为在服务提供者与门户服务器之间建立的Web服务的一部分。
17.根据权利要求12的方法,其中,权利要求12的步骤由服务代理和所述服务代理操纵的计算设备中的至少一个来执行,响应服务请求而执行所述步骤。
18.一种用于对门户组件portlet信息进行更新的系统,包括:
被配置为对客户端的多个portlet的更新进行处理的交互引擎,其中,每个portlet包括:
自与该portlet绑定的相应数据源进行迭代更新的界面控件;
呈现给客户端用户的界面控件的呈现版本;以及
被配置为由接收自所述数据源的数据直接进行更新的界面控件的隐藏版本,其中,在进行更新之后以及从所述数据源获取新更新之前,将隐藏版本与呈现版本进行切换。
19.根据权利要求18的系统,还包括:
位置远离客户端以及数据源的门户服务器,其中,门户服务器充当客户端与数据源之间通信中介。
20.根据权利要求19的系统,还包括:
面向服务体系结构的服务提供者,其被配置为与portlet绑定的数据源,其中,将portlet更新提供为在服务提供者与门户服务器之间建立的Web服务的一部分。
CN200710136900A 2006-07-24 2007-07-23 用于更新portlet信息的方法和系统 Expired - Fee Related CN100585598C (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US11/459,429 US8539345B2 (en) 2006-07-24 2006-07-24 Updating portlet interface controls by updating a hidden version of the control and then switching it with a displayed version
US11/459,429 2006-07-24

Publications (2)

Publication Number Publication Date
CN101114302A CN101114302A (zh) 2008-01-30
CN100585598C true CN100585598C (zh) 2010-01-27

Family

ID=39022643

Family Applications (1)

Application Number Title Priority Date Filing Date
CN200710136900A Expired - Fee Related CN100585598C (zh) 2006-07-24 2007-07-23 用于更新portlet信息的方法和系统

Country Status (2)

Country Link
US (1) US8539345B2 (zh)
CN (1) CN100585598C (zh)

Families Citing this family (35)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB0611399D0 (en) * 2006-06-09 2006-07-19 Ibm A method, apparatus or software for providing a portal comprising one or more portlets for displaying data
US8990340B1 (en) 2006-06-27 2015-03-24 Fingerprint Cards Ab Aggregation system
US7886000B1 (en) 2006-06-27 2011-02-08 Confluence Commons, Inc. Aggregation system for social network sites
US8539345B2 (en) * 2006-07-24 2013-09-17 International Business Machines Corporation Updating portlet interface controls by updating a hidden version of the control and then switching it with a displayed version
US8812944B2 (en) * 2007-08-16 2014-08-19 Yahoo! Inc. Page modules and providing content
US8302013B2 (en) * 2007-08-16 2012-10-30 Yahoo! Inc. Personalized page modules
US20090049380A1 (en) * 2007-08-16 2009-02-19 Joshua Allen Rehling Page Modules and States
US8576218B2 (en) * 2008-12-18 2013-11-05 Microsoft Corporation Bi-directional update of a grid and associated visualizations
CA2679494C (en) * 2009-09-17 2014-06-10 Ibm Canada Limited - Ibm Canada Limitee Consolidating related task data in process management solutions
US20110091844A1 (en) * 2009-10-20 2011-04-21 Best Roger J Virtual book
JP2011113109A (ja) * 2009-11-24 2011-06-09 Nec Corp コンポーネント連携装置及びコンポーネント連携方法
US8381098B2 (en) * 2010-03-29 2013-02-19 International Business Machines Corporation Webpage request handling
US8572478B2 (en) 2010-04-12 2013-10-29 Google Inc. Row heights in electronic documents
CA2707251A1 (en) 2010-06-29 2010-09-15 Ibm Canada Limited - Ibm Canada Limitee Target application creation
US9870418B2 (en) * 2010-12-31 2018-01-16 International Business Machines Corporation Application cache profiler
CN102300122B (zh) * 2011-09-09 2014-04-16 四川长虹电器股份有限公司 数字电视节目点播方法
US8499122B2 (en) * 2011-11-21 2013-07-30 Microsoft Corporation Asynchronous data binding
US9323728B2 (en) * 2012-03-16 2016-04-26 International Business Machines Corporation Coordinating the management of the layout and design of portal pages with the management of its associated web content
JP5966505B2 (ja) * 2012-03-28 2016-08-10 日本電気株式会社 サーバ装置、クライアント装置、リクエスト処理方法、サーバ応答処理方法、リクエスト処理プログラム、および、応答処理プログラム
CN102843369B (zh) * 2012-08-24 2016-08-17 广东宇天科技有限公司 Ui界面的网络访问方法和系统
US9031918B2 (en) * 2012-12-27 2015-05-12 Microsoft Licensing Technology, LLC Per-user aggregation of database content
US8843827B2 (en) 2013-01-22 2014-09-23 Tealium Inc. Activation of dormant features in native applications
CN103188543A (zh) * 2013-03-19 2013-07-03 东莞宇龙通信科技有限公司 遥控方法及装置
US8805946B1 (en) 2013-08-30 2014-08-12 Tealium Inc. System and method for combining content site visitor profiles
US11695845B2 (en) 2013-08-30 2023-07-04 Tealium Inc. System and method for separating content site visitor profiles
US9537964B2 (en) 2015-03-11 2017-01-03 Tealium Inc. System and method for separating content site visitor profiles
US20150066587A1 (en) * 2013-08-30 2015-03-05 Tealium Inc. Content site visitor processing system
US9081789B2 (en) 2013-10-28 2015-07-14 Tealium Inc. System for prefetching digital tags
EP2869214B1 (en) * 2013-10-31 2021-01-20 Hewlett-Packard Enterprise Development LP Methods to update portals
WO2015069659A1 (en) 2013-11-05 2015-05-14 Tealium Inc. Universal visitor identification system
WO2015157646A1 (en) 2014-04-11 2015-10-15 Ensighten, Inc. Url prefetching
US11294530B2 (en) * 2017-08-07 2022-04-05 Microsoft Technology Licensing, Llc Displaying a translucent version of a user interface element
CN107832088A (zh) * 2017-11-06 2018-03-23 青岛海信电器股份有限公司 控件使用方法及装置、计算设备、计算机存储介质
US11146656B2 (en) 2019-12-20 2021-10-12 Tealium Inc. Feature activation control and data prefetching with network-connected mobile devices
CN113254492B (zh) * 2021-07-07 2021-11-23 北京优锘科技有限公司 一种查询后台同步管理层级可视化对象的方法、装置和设备

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1670686A (zh) * 2004-03-19 2005-09-21 华为技术有限公司 在利用界面显示信息的过程中处理信息的方法
CN1788255A (zh) * 2002-08-30 2006-06-14 高通股份有限公司 用于更新驻留在无线设备上的数据组版本的服务器处理

Family Cites Families (32)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5440735A (en) * 1993-10-08 1995-08-08 International Business Machines Corporation Simplified relational data base snapshot copying
CA2278709A1 (en) 1997-01-27 1998-08-13 Benjamin Slotznick System for delivering and displaying primary and secondary information
US7346843B2 (en) * 2001-09-18 2008-03-18 International Business Machines Corporation Low-latency, incremental rendering in a content framework
US20030058271A1 (en) * 2001-09-27 2003-03-27 Koninklijke Philips Electronics N.V. Method and system and article of manufacture for internet slide show
US20030132944A1 (en) * 2001-10-03 2003-07-17 Sun Microsystems, Inc. User control of generalized semantic zooming
US20030167315A1 (en) * 2002-02-01 2003-09-04 Softwerc Technologies, Inc. Fast creation of custom internet portals using thin clients
US7162717B1 (en) * 2002-09-26 2007-01-09 Intuit Inc. Compressed file patcher
US7177918B2 (en) 2002-12-20 2007-02-13 International Business Machines Corporation Method and system for efficiently processing multiframe data in a client/server computing environment
US7146563B2 (en) * 2003-05-29 2006-12-05 International Business Machines Corporation Maintaining screen and form state in portlets
US20050050021A1 (en) * 2003-08-25 2005-03-03 Sybase, Inc. Information Messaging and Collaboration System
US7480698B2 (en) * 2003-12-18 2009-01-20 International Business Machines Corporation Updating event data on a page using code understood natively by a browser
US7624160B2 (en) * 2004-05-04 2009-11-24 International Business Machines Corporation Methods, systems, and computer program products for client side prefetching and caching of portlets
US8181112B2 (en) 2004-05-21 2012-05-15 Oracle International Corporation Independent portlet rendering
US7236938B2 (en) * 2004-08-11 2007-06-26 Hewlett-Packard Development Company, L.P. System and method for refreshing metric values
US7500181B2 (en) * 2004-08-31 2009-03-03 International Business Machines Corporation Method for updating a portal page
US7496855B2 (en) * 2004-10-05 2009-02-24 International Business Machines Corporation Method and system for maintaining scroll position in a web user interface
US7342584B2 (en) * 2004-11-18 2008-03-11 Amx, Llc Method and computer program for implementing interactive bargraphs of any shape or design on a graphical user interface
US7571219B2 (en) * 2004-12-16 2009-08-04 Sap Ag Preserving and accessing active components in web pages
US8631324B2 (en) * 2005-01-12 2014-01-14 International Business Machines Corporation Running content emitters natively on local operating system
US20060212798A1 (en) * 2005-01-12 2006-09-21 Lection David B Rendering content natively on local operating system
US9218329B2 (en) * 2005-06-30 2015-12-22 International Business Machines Corporation Independent submission of forms in a portal view
US7636881B2 (en) * 2005-06-30 2009-12-22 International Business Machines Corporation Displaying a portal with render-when-ready portlets
US20070083821A1 (en) * 2005-10-07 2007-04-12 International Business Machines Corporation Creating viewports from selected regions of windows
US8185643B2 (en) * 2005-11-17 2012-05-22 Oracle International Corporation System and method for providing security in a communities framework
US7680927B2 (en) * 2005-11-17 2010-03-16 Bea Systems, Inc. System and method for providing testing for a communities framework
US7590687B2 (en) * 2005-11-17 2009-09-15 Bea Systems, Inc. System and method for providing notifications in a communities framework
US20070174256A1 (en) * 2006-01-13 2007-07-26 John Mark Morris Method for aging and resampling optimizer statistics
US7853882B2 (en) * 2006-04-11 2010-12-14 International Business Machines Corporation Portlets having different portlet specific enablement states
US7984383B2 (en) * 2006-04-28 2011-07-19 Business Objects Software, Ltd. Apparatus and method for using a panel layout to consolidate dynamic and interactive graphics representative of input and output data
US8539345B2 (en) * 2006-07-24 2013-09-17 International Business Machines Corporation Updating portlet interface controls by updating a hidden version of the control and then switching it with a displayed version
US7594192B2 (en) * 2006-09-19 2009-09-22 International Business Machines Corporation Method and apparatus for identifying hotkey conflicts
US9135605B2 (en) * 2006-11-29 2015-09-15 Adobe Systems Incorporated Instant electronic meeting from within a current computer application

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1788255A (zh) * 2002-08-30 2006-06-14 高通股份有限公司 用于更新驻留在无线设备上的数据组版本的服务器处理
CN1670686A (zh) * 2004-03-19 2005-09-21 华为技术有限公司 在利用界面显示信息的过程中处理信息的方法

Also Published As

Publication number Publication date
CN101114302A (zh) 2008-01-30
US8539345B2 (en) 2013-09-17
US20080040672A1 (en) 2008-02-14

Similar Documents

Publication Publication Date Title
CN100585598C (zh) 用于更新portlet信息的方法和系统
CN100447787C (zh) 用于在客户机端预取和高速缓存门户组件的方法、系统
JP6803955B2 (ja) レイテンシの削減
CN104137104B (zh) 基于共享元信息的网页的协作式加载
US7133908B1 (en) Metrics and status presentation system and method using persistent template-driven web objects
US6829630B1 (en) Mechanisms for web-object event/state-driven communication between networked devices
US8468217B2 (en) Maintaining portlet data currency while minimizing latency
CA2649369C (en) Synchronizing structured web site contents
CN1972275A (zh) 控制对web资源请求的处理的方法和系统
US8099431B2 (en) Services for data access based on a data ownership directory in distributed system landscapes
CN104919453B (zh) 数据库内容的每用户汇总
US20190095929A1 (en) Unification of web page reporting and updating through a page tag
CN104756111A (zh) 策略查询到连续查询转换
CN102880627A (zh) 用于支持播客的技术和系统
CN102981911B (zh) 一种分布式消息处理系统及其中的设备和方法
CN103959285A (zh) 远程浏览会话管理
JP2006501558A (ja) ウェブ・アプリケーション用のウェブ・ページのセッションをユーザに表示する装置と方法
CA3107499A1 (en) Systems and methods for initiating processing actions utilizing automatically generated data of a group-based communication system
CN101405723A (zh) 初始动态呈现控件数据估计
US20070282825A1 (en) Systems and methods for dynamic content linking
US20140229435A1 (en) In-memory real-time synchronized database system and method
US10482545B2 (en) User management of subscriptions to multiple social network platforms
CN107408065A (zh) 监视应用加载
CN104094299A (zh) 从发布的日历检索可用性信息
US20120131037A1 (en) Asynchronous online searches

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
C41 Transfer of patent application or patent right or utility model
TR01 Transfer of patent right

Effective date of registration: 20160422

Address after: American California

Patentee after: Snapchat Inc.

Address before: American New York

Patentee before: International Business Machines Corp.

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: 20100127

Termination date: 20180723