可分JAVA小程序制造技术

技术编号:2888616 阅读:201 留言:0更新日期:2012-04-11 18:40
本发明专利技术公开了一种用于把Java小程序从提供执行这些小程序的Java核心程序的应用程序,例如一个浏览器的限制中分开的方法和系统。从而被分开的小程序可以出现在一个分开的窗口中,更易于由操作环境桌面控制。Java小程序继续在应用程序的虚拟机中运行,但是不再考虑应用程序的图形接口限制。另外,如果启动小程序的应用程序转移到一个新的URL站点,则Java小程序继续运行。此外,小程序在被分开后可以重新连接在应用程序而出现在该应用程序的历史中。(*该技术在2018年保护过期,可自由使用*)

【技术实现步骤摘要】

本专利技术涉及计算机软件领域,更具体地说,本专利技术涉及小程序(applet)以及它们与操作环境之间的关系。像浏览器这样的应用程序的近期版本提供使用与平台无关的小程序,它们可以作为预编译Java字节码(中间级指令)下载。浏览器的例子有网景公司的Navigator 3.0TM或Hot JavaTM(SunMicrosystems的一种产品,Sun图标和Hot Java是SunMicrosystems公司在美国和其它国家的注册商标)。这些小程序通过一个“虚拟机”执行。虚拟机是一种特定平台环境,它解释或编译小程序代码,并在其中执行高级指令。一种流行的、占统治地位的小程序编程语言是由Sun Microsystems开发的“JavaTM”(SunMicrosystems的一种产品,Sun图标和Hot Java是SunMicrosystems公司在美国和其它国家的注册商标)。用Java或其少数变种编程的小程序称为Java小程序。Java小程序的关键用处在于,它们是与平台无关的,亦即为平台A编写的一个Java小程序不需修改而能运行在B平台上,只要A和B两个平台都有能为它们各自的平台执行小程序代码的虚拟机。虽然Java小程序是与平台无关的,但是启动它们的应用程序的特征、变异和限制使这些小程序基本上成为与应用程序有关的,从而削弱了小程序的灵活性。例如,Java小程序在从网景公司的领航员(Navigator)的Sun操作系统版本的HTML(超文本标识语言)代码中调用时的一个限制是,当小程序被调用时,为该调用的HTML标签必须包括高度和宽度,由此定义一个该小程序在其内运行的窗口尺寸。当在应用程序窗口内运行时,小程序受所述高度和宽度标签限制,从而任何为该小程序产生的输出、输入、对话框或弹出式窗口必须出现在该限制范围内。在这种情况下,当小程序窗口是应用程序窗口的一个“子窗口”时,小程序窗口遭受几种障碍。首先,小程序窗口不能关闭,除非应用程序退出,或者直到应用程序转移到从一个新主机接收数据(从启动(生成)所述小程序的同一窗口)。伴随这一限制,当启动小程序的应用程序转移到一个新的URL(统一资源定位器一由应用程序访问的主机“地址”)时,则小程序窗口关闭,小程序停止执行。用户不能控制小程序停止执行。在一些情况下,即使应用程序已经转移到不同的URL,仍希望继续运行小程序。例如,用户可能希望一个从URL A启动的、来自一个外部或者外地源播放内容的流式音频小程序继续播放,即使应用程序已转移到不具有同一小程序的URL B。在现在的实践中,必需打开或启动该应用程序的一个新的事件(亦即打开一个新的应用程序窗口)从URL B接收内容,以便使其它应用程序事件继续执行音频小程序。但是这一方法有几个缺点。首先,启动一个新的应用程序事件可能增加存储器和系统资源的使用,它可能降低小程序和新应用程序事件的性能。另外,仍然不能从应用程序的限制或环境的外部控制小程序。事实上,随着第二应用程序窗口(事件)的启动,在小程序可以被控制之前,第一窗口必须成为活动的(在前台,在光标或鼠标的控制下)。另外,常规小程序模型不允许小程序窗口在操作环境中图标化(窗口最小化)。在现在的实践中,为使小程序最小和变为图标,应用程序窗口自身必须最小化。在这种情况下,小程序不具有自己的图标,而是继承浏览器的图标。窗口不能最小化、不能重新定义大小以及不能进行其它GUI的修改,例如改变字型、背景颜色等,将给小程序以严重的限制,很难不受应用程序的限制而独立控制。消除应用程序对可执行代码模块依赖的一种解决方法是使用“插入程序”。然而,不像在特定环境/平台下运行的“插入程序”(包含数据/代码的文件,用于改变、增强或扩展父应用的操作)一样,Java小程序基本上是与平台无关的。插入程序必须下载(或与应用程序打包),允许某些也许应用程序内部不支持的文件类型(例如ShockWaveTM或RealAudioTM)在本地平台上被解释和输出。然而,插入程序不像应用驻留的Java虚拟机,它驻留在本地,而且必须存储在本地磁盘中以备重新使用,这是它的缺点。重要的是,插入程序启动进程完全独立于浏览器,从而是依赖于平台的。于是,虽然插入程序可能允许GUI独立地控制它们的窗口,但是它们不像Java小程序,完全不从浏览器继承(因为它们不需要虚拟机运行)。运行一个插入程序类似于通过操作环境运行一个单独的应用程序,因此它不像Java小程序,对便于移动的可执行性不是一个可行的代用方案。用于增强一种诸如浏览器的应用程序的能力的另一个发展是使用“帮助者”(“helper”)应用程序。帮助者应用程序存储在本地,它不具有Java小程序的便移动性和对平台的独立性,亦即在奔腾平台上的一个帮助者应用程序不能用在Sun SparcTM(Sun Microsystems的一种产品,Sun图标和Sparc是Sun Microsystems公司在美国和其它国家的注册商标)系统上,反之亦然。帮助者应用程序还在操作环境内启动一个新进程/线程,并命令一个新应用程序事件的系统资源,这一点不像Java小程序。帮助者应用程序与交付待处理的数据的应用程序无关,仅通过操作环境被调用。帮助者应用程序不能插入,即不在应用程序的虚拟机内执行。另外,帮助者应用程序不易从主机转移到客户机,因为帮助者应用程序与小程序相比代码尺寸相当大。另外,在诸如网络计算机(NCs)的更新的信息设备中,帮助者应用程序和插入程序由于有限的操作环境特征和缺乏本地存储器甚至不能工作。NC在概念上说来是基于使用远端存储的小程序,例如在网络上分布的Java小程序来对NC提供应用程序和内容。相比起来,NC的当前工业标准保证NC通过使用虚拟机和浏览器/应用程序能够执行Java小程序。即使在NC情况下,也希望这些小程序具有它们自己与调用它们的浏览器/应用程序分开的嵌入式功能。因此,需要有一种方法和装置把Java小程序从应用程序的限制中分开,以便它们可以通过操作环境直接由GUI控制,以及它们不由启动它们的应用程序的状态而限制。本专利技术公开了一种方法和系统,用于把Java小程序从提供执行这些小程序的Java虚拟机的应用程序的限制中分开。从而分开的小程序可以出现在一个分开的窗口中,更易于由操作环境桌面控制。Java小程序继续在应用程序的虚拟机之下运行,但是比所述应用程序的图形接口限制少。另外,如果启动小程序的应用程序转移到一个新的URL主机,Java小程序继续运行。此外,小程序一旦分开后,可以重新连接到应用程序而出现在该应用程序的历史中。图1是根据本专利技术的一个实施例的流程图,它变换一个不可分Java小程序使其具有可分功能。图2表示当根据本专利技术的一个实施例从一个应用程序中启动一个小程序时,该小程序行为的流程图。图3是为Java小程序定义的继承层次结构例子的图。图4表示在显示器屏幕上显示的分开的小程序。图5表示在连接状态的一个小程序“Jukebox(自动电唱机)”。图6表示根据本专利技术的一个实施例分开一个小程序的流程图。图7表示根据本专利技术的一个实施例连接一个小程序的流程图。定义“操作环境”一词指操作系统、内核、外壳等低层软件,它们安排任务日程、分配存储器、处理对外设硬件的接口和在无应用程序运行时为用户提供一个默本文档来自技高网...

【技术保护点】
一种处理方法,包括步骤有:实现一个可分接口;以及修改一个不可分小程序使其成为一个可分的小程序。

【技术特征摘要】
...

【专利技术属性】
技术研发人员:B拉扎维E哈斯巴格尔
申请(专利权)人:太阳微系统有限公司
类型:发明
国别省市:US[美国]

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1