用于托管并执行组件应用程序的方法和系统的制作方法

文档序号:6567102阅读:334来源:国知局
专利名称:用于托管并执行组件应用程序的方法和系统的制作方法
技术领域
本发明涉及一种用于在计算设备中托管(host)并执行组件应用 程序的系统和方法。本申请要求2005年4月18日递交的美国临时申请 No.60/672,241的优先权。
背景技术
随着无线网络的发展,当今使用的无线设备的数目也持续增长。 这种设备包括移动电话、具有无线通信能力的个人数字助理(PDA)、 双向寻呼机等。在可用无线设备增长的同时,在这些设备上运行的软 件应用程序的使用也增长。例如,无线设备可包括获取希望城市列表 的天气预报的应用程序或使用户可以购买商品的应用程序。除了语音 通信之外,这些软件应用程序还具有能够传送无线网络数据从而给用 户提供及时且有用的服务的优点。然而,由于有多种不同种类的设备, 一些设备具有有限资源,以及向设备传送大量数据的复杂性,使得开 发软件应用程序是一项困难且耗时的任务。
当前,设备被配置为通过基于互联网的浏览器和/或本地应用程序 来与网络服务进行通信。浏览器具有适用于操作在多种不同设备的交 叉平台上的优点,但是也具有向网络服务请求页面(HTML的屏幕定 义)从而打断了屏幕中包含的数据的永久性的缺点。浏览器的另一缺 点是在运行时间呈现屏幕,而这需要大量资源。针对浏览器的应用程 序是设计与平台无关的应用程序的有效工具。因此,无论平台如何, 不同的运行时间环境都执行相同的应用程序。然而,由于不同的无线 设备具有不同的能力和形式因数,所以也许不能够按照希望执行或显 示应用程序。此外,基于浏览器的应用程序通常需要大的传送带宽来 有效地进行操作,而这对于一些无线设备来说成本很大,甚至是不可能的。另一方面,针对特定无线设备平台开发了本地应用程序,从而为 在该平台上运行的运行时间环境提供了相对优化的应用程序。然而, 平台相关的应用程序引入了多个缺陷,这些缺陷包括必须开发多个 版本的相同应用程序,并且大小相对较大,从而增加了无线设备的存 储器资源的负担。此外,应用程序开发者需要对诸如^^和0++之类 的编程语言熟悉以便构造这种本地应用程序。因此,需要一种克服或改善上述限制的应用程序基础结构。作为 这种基础结构的一部分,需要一种配置用于在无线设备上托管并执行 应用程序的运行时间环境。发明内容根据本发明的一个方面,提供一种能够执行组件应用程序的设备, 该设备包括用于执行本地应用程序的本地运行时间环境和用于执行组 件应用程序的组件应用程序运行时间环境,该组件应用程序运行时间 环境包括控制中心,用于以本地应用程序来表示组件应用程序运行 时间环境,并将设备所提供的特征提供给组件应用程序;基本服务层, 用于向组件应用程序提供基本设备服务;消息收发层,用于与组件应 用程序进行消息往来传送;以及应用层,用于提供执行组件应用程序 的用户接口。根据本发明的另一方面,提供一种用于在设备上执行组件应用程 序的组件应用程序运行时间环境,该设备包括用于执行本地应用程序 的本地运行时间环境,所述组件应用程序运行时间环境包括控制中 心,用于以本地应用程序来表示组件应用程序运行时间环境,并将设 备所提供的特征提供给组件应用程序;基本服务层,用于向组件应用 程序提供基本设备服务;消息收发层,用于与组件应用程序进行消息 往来传送;以及应用层,用于提供执行组件应用程序的用户接口。根据本发明的另一方面,提供一种用于在主机设备上执行的组件 应用程序运行时间环境中执行组件应用程序的方法,该方法包括以下 步骤接收针对目标组件应用程序的请求;将相应的组件应用程序元 数据加载到组件应用程序运行时间环境中;处理对于目标组件应用程
序未决的任何消息;运行目标组件应用程序的任何可用启动脚本;以 及在设备屏幕上呈现主屏幕组件。


现在参考下面的附图,仅作为示例来描述本发明的实施例,附图中图l是通信基础结构的示意图;图2是运行时间环境的示意图;图3是示出了与控制中心的交互的框图;图4是示出了与屏幕子系统的交互的框图;图5是示出了与解译子系统的交互的框图;图6是更详细地示出了元数据子系统的框图;图7是示出了与元数据子系统的交互的框图;图8是示出了与访问子系统的交互的框图;图9是示出了与RE容器的交互的框图;图10是示出了与发现子系统的交互的框图;图ll是示出了与供应子系统的交互的框图;图12是示出了与生命周期子系统的交互的框图;图13是示出了与消息收发子系统的交互的框图;图14是示出了与永久性子系统的交互的框图;图15是示出了与安全子系统的交互的框图;图16是示出了与通信子系统的交互的框图;图17是示出了运行时间环境的初始化的流程图;图18是示出了接收进入消息的流程图;图19是示出了接收进入组件应用程序消息的流程图;图20是示出了发送外发消息的流程图;图21是示出了运行时间环境升级的安装的流程图;图22是示出了启动组件应用程序的流程图;以及图23是示出了用户发起供应请求的流程图。
具体实施方式
为了方便,说明书中用类似的附图标记指代附图中类似的结构。参考图1,通信基础结构大体如附图标记100所示。通信基础结构100 包括多个通信设备102或者简单的设备102、通信网络104、应用程序 网关106和多个后端服务器108。设备102包括有线和无线的计算设备,例如桌上型计算机、膝上 型或其它便携式计算机、智能电话、个人数字助理(PDA)等。设备 102通过通信网络104与应用程序网关106进行通信。因此,通信网 络104可包括多个组件(例如无线网络110、中继器112、团体服务器 (corporate server) 114和/或移动数据服务器116),用于在设备102 和应用程序网关106之间中继数据。应用程序网关106包括网关服务器118、供应服务器120、发现服 务器122和贮存库124。网关服务器118与供应服务器120以及发现 服务器122进行通信。网关服务器110还经由适当链路与多个后端服 务器108进行通信,例如网络服务108a、数据库服务108b以及其它 企业服务108c。例如,网关服务器110分别通过简单对象访问协议 (SOAP)和Java数据库连接(JDBC)与网络服务108a以及数据库 服务108b相连。其它类型的后端服务器108及其相应的链路对于本领 域技术人员而言是显而易见的。因此,可见,网关服务器118用作设 备102与后端服务器108之间的消息中介。最初给每个无线设备102提供服务手册,用于建立各种协议和设 置,包括团体服务器114和/或移动数据服务器116的连接信息。这些 参数可包括应用程序网关服务器118的统一资源定位符(URL)及其 加密密钥。可选地,如果最初没有给无线设备102提供URL和加密密 钥,.则可通过移动数据服务器116将它们推送给无线设备102。移动 设备102然后可通过应用程序网关服务器118的URL与应用程序网关 106相连。提供用于在无线设备102上执行的应用程序。这些应用程序以一 系列包或束的形式存储在贮存库124中。这些包典型地由应用程序开发者使用应用程序开发环境所提供的设计工具而创建。通过发现服务器122所提供的发现服务,在登记簿(registry)中
公布贮存库124中可用的应用程序包。可以认识到,可存在多于一个 的贮存库124和由网关服务器118使用的关联登记簿。在初始化之后,设备102可通过主动下载应用程序、或通过网关 服务器118向设备102推送应用程序,来访问贮存库124中存储的应 用程序。在本实施例中,上述应用程序是组件应用程序。组件应用程序是 通常由组件(component)的结构化集合(包括数据组件、消息组件、 呈现组件和工作流组件)定义的应用程序。使用结构化语言来定义组 件,并由智能运行时间容器在客户端设备上运行。数据组件定义了组件应用程序所使用的数据实体。数据实体的示 例包括订单、用户和金融交易。数据组件定义了描述数据实体所需的 信息以及表达信息的格式。例如,数据组件可定义如下订单,该订单 包括数字格式的订单的唯一标识符、串格式的项目列表、日期时间 格式的订单创建时间、串格式的订单状态以及根据另一种数据组件定 义的格式的下订单的用户。由于通常通过消息来传送数据元素,所以 通常在数据库中持续存在数据组件。数据组件可由应用程序设计者动 态地产生或定义。消息组件定义了组件应用程序与诸如网络服务的外部系统进行通 信所用的消息格式。例如, 一种消息组件可描述用于下订单的消息, 该消息包括订单的唯一标识符、订单状态和与订单相关联的标注。呈现组件定义了组件应用程序通过用户接口显示给用户的外观和 行为。呈现组件可规定图形用户界面(GUI)屏幕、控制和在用户与 组件应用程序进行交互时要执行的动作。例如,呈现组件可以定义屏 幕、标签、编辑框、按钮和菜单以及用户在编辑框中打字或按下按钮 时要采取的动作。组件应用程序的工作流组件定义了要执行动作时进行的处理(例 如上述呈现组件所规定的动作),或者在消息到达时要执行的动作。呈 现工作流和消息处理均由工作流组件定义。工作流组件以元数据或编 程语言或脚本语言的一系列指令写出。工作流组件支持消息组件之间 的关联,并将应用程序流定义为对其它组件操作的一组规则。在名称分另寸为"System and Method for Building and Execution ofPlatform-Neutral Generic Services Client Applications" 、 "System and Method of Building Wireless Component Applications,"System and Method of Creating and Communicating with Component Based Wireless Applications"的2008年4月9日 申请日期2006年4月18日 优先权日2005年4月18日
发明者卡门·维塔诺夫, 布伦杜沙·弗里奇, 布莱恩·戈林, 比埃拉·比布尔, 迈克尔·申菲尔德 申请人:捷讯研究有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1