CN102473103B - 控制运行的应用程序以便进行实时场景图编辑 - Google Patents

控制运行的应用程序以便进行实时场景图编辑 Download PDF

Info

Publication number
CN102473103B
CN102473103B CN201180002458.5A CN201180002458A CN102473103B CN 102473103 B CN102473103 B CN 102473103B CN 201180002458 A CN201180002458 A CN 201180002458A CN 102473103 B CN102473103 B CN 102473103B
Authority
CN
China
Prior art keywords
file
application
content file
request
client
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.)
Active
Application number
CN201180002458.5A
Other languages
English (en)
Other versions
CN102473103A (zh
Inventor
J-F·丹尼斯
A·艾伦森
A·罗杰斯
J·伯基
E·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.)
Oracle America Inc
Original Assignee
Oracle America Inc
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 Oracle America Inc filed Critical Oracle America Inc
Publication of CN102473103A publication Critical patent/CN102473103A/zh
Application granted granted Critical
Publication of CN102473103B publication Critical patent/CN102473103B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • G06F8/656Updates while running
    • 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/953Querying, e.g. by the use of web search engines
    • G06F16/9535Search customisation based on user profiles and personalisation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Data Mining & Analysis (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Stored Programmes (AREA)

Abstract

一般来说,在一个方面,本发明涉及一种计算机可读介质,所述计算机可读介质包括执行一种方法的软件指令,所述方法包括由内容服务器从客户端接收对应用程序内容文件的第一请求,其中应用程序内容文件与第一Java网络加载协议(JNLP)文件相关联,响应于所述第一请求,提供所述应用程序内容文件;从客户端接收编辑所述应用程序内容文件的第二请求,响应于所述第二请求,向客户端提供应用程序设计器工具;从客户端接收利用所述应用程序设计器工具生成的变更的应用程序内容文件,生成与变更的应用程序内容文件相关联的第二JNLP文件,和把第二JNLP文件提供给web服务器。

Description

控制运行的应用程序以便进行实时场景图编辑
背景技术
现代计算机应用程序可存储在地理上遥远的多个位置,或者存储在世界各地的多个计算机上,以便向最终用户提供对应用程序的便利访问。另外,最终用户可能严重依赖于这种应用程序,以致对这种应用程序的访问的中断可能导致重大的社会和金融挫折。
当部署新版本的应用程序时,典型的计算机应用程序会在一段时间内不能供最终用户使用。此外,对典型计算机应用程序做出的改变只有在做出所述改变之后重新部署所述应用程序时才能观察到。
发明内容
一般来说,在一个方面,本发明涉及一种计算机可读介质,所述计算机可读介质包括执行一种方法的软件指令,所述方法包括由内容服务器从客户端接收对应用程序内容文件的第一请求,其中应用程序内容文件与第一Java网络加载协议(Javanetworklaunchprotocol,JNLP)文件相关联,响应于所述第一请求,提供所述应用程序内容文件;从客户端接收编辑所述应用程序内容文件的第二请求,响应于所述第二请求,向客户端提供应用程序设计器工具;从客户端接收利用所述应用程序设计器工具生成的变更的应用程序内容文件,生成与变更的应用程序内容文件相关联的第二JNLP文件,和把第二JNLP文件提供给web服务器。
一般来说,在一个方面,本发明涉及一种系统。所述系统包括内容服务器,所述内容服务器包括处理器,应用程序内容文件,和配置成存储指令的存储器,其中当被处理器执行时,所述指令使内容服务器从客户端接收对应用程序内容文件的第一请求,其中应用程序内容文件与第一Java网络加载协议(JNLP)文件相关联,响应于所述第一请求,提供所述应用程序内容文件;从客户端接收编辑所述应用程序内容文件的第二请求,响应于所述第二请求,向客户端提供应用程序设计器工具;从客户端接收利用所述应用程序设计器工具生成的变更的应用程序内容文件,生成与变更的应用程序内容文件相关联的第二JNLP文件,和把第二JNLP文件提供给web服务器。
一般来说,在一个方面,本发明涉及一种计算机可读介质,所述计算机可读介质包括执行一种方法的软件指令,所述方法包括由客户端向web服务器发送对应用程序内容文件的第一请求,其中应用程序内容文件与Java网络加载协议(JNLP)文件相关联,从响应于第一请求的web服务器接收JNLP文件,向内容服务器发送第二请求,其中第二请求包含至少一部分的JNLP文件,从响应于第二请求的内容服务器接收应用程序内容文件,向内容服务器发送编辑应用程序内容文件的第二请求,从响应于第三请求的内容服务器接收给客户端的应用程序设计器工具,利用应用程序设计器工具编辑应用程序内容文件,以获得变更的内容文件,向内容服务器发送包含变更的内容文件的第四请求。
附图说明
图1表示根据本发明的一个或多个实施例的系统。
图2表示根据本发明的一个或多个实施例的流程图。
图3表示根据本发明的一个或多个实施例的流程图。
图4表示根据本发明的一个或多个实施例的例子。
图5表示根据本发明的一个或多个实施例的计算机系统。
具体实施方式
下面参考附图,说明本发明的示例性实施例。附图中的相似项目用相同的附图标记表示。
在本发明的实施例中,为了更透彻地理解本发明,阐述了众多的具体细节。不过,显然对本领域技术人员来说,可在没有这些具体细节的情况下实施本发明。在其它情况下,为了避免模糊本发明,未详细说明公知的特征。
一般来说,本发明的实施例涉及控制运行的JavaFX应用程序,以便进行实时场景图编辑(livescenegraphediting)。更具体地说,本发明的实施例涉及在不中断用户对应用程序的访问的情况下,编辑部署的(即,最终用户可访问的)JavaFX应用程序的内容和行为的方法和系统(是SunMicrosystems,Inc.,MountainView,CA拥有的注册商标)。
图1表示根据本发明的一个实施例的系统。系统包括用户浏览器(100),Web服务器(102)和内容服务器(104)。用户浏览器(100)包括Web启动小程序(106),FX设计器运行时实例(108),JavaFX应用程序实例(110)和FX设计器工具实例(112)。Web服务器(102)包括Java网络加载协议(JNLP)文件(114)。内容服务器(104)包括FX设计器运行时文件(116),JavaFX应用程序内容文件(118)和FX设计器工具文件(120)。下面详细地分别讨论这些组件。
在本发明的一个实施例中,用户浏览器(100)是在用户计算机系统(未示出)上运行的用于与因特网内容交互作用的应用程序。用户浏览器可以是本领域中已知的能够运行Web启动小程序(106)的任何因特网浏览器,其例子可包括Internet浏览器(Internet是MicrosoftCorp.拥有的注册商标),浏览器(是MozillaFoundation拥有的注册商标),浏览器(是AppleComputer,Inc.拥有的注册商标),和GoogleChromeTM浏览器(GoogleChromeTM是Google,Inc.拥有的商标)。
在本发明的一个实施例中,在用户的控制下,用户浏览器(100)可导航到用来作为JavaFX应用程序(例如,JavaFX应用程序实例(110))的宿主的网页。在本发明的一个实施例中,所述网页包括对与嵌入的JavaFX应用程序(例如,JavaFX应用程序实例(110))相关联的JNLP文件(114)的引用。在本发明的一个实施例中,用户浏览器(100)被配置成向Web服务器(102)请求JNLP文件(114)。
在本发明的一个实施例中,Web服务器(102)被配置成通过向用户浏览器(100)提供与JavaFX应用程序(例如,JavaFX应用程序实例(110))相关联的JNLP文件(例如,JNLP文件(114)),来响应用户浏览器(100)对JavaFX应用程序(例如,JavaFX应用程序实例(110))的请求。在本发明的一个实施例中,Web服务器(102)是在计算机系统(未示出)上运行的,配置成响应通过网络(例如,局域网,广域网,因特网等)发送的请求的的应用程序。在本发明的一个实施例中,Web服务器(102)可存储多于一个JNLP文件(例如,JNLP文件(114))。此外,每个JNLP文件可以与一个不同的应用程序相关联,多个JNLP文件(例如,JNLP文件(114))可以与同一应用程序的不同版本相关联。在本发明的一个实施例中,用户浏览器(100)被配置成响应于从Web服务器(例如,Web服务器(102))接收到JNLP文件(例如,JNLP文件(114)),实例化Web启动小程序(例如,Web启动小程序(106))。在本发明的一个实施例中,用户浏览器(100)可把接收的JNLP文件(例如,JNLP文件(114))直接提供给Web启动小程序(106)。
在本发明的一个实施例中,Web启动小程序(106)利用相关联的JNLP文件(例如,JNLP文件(114)),在用户浏览器(100)内创建能够初始化Java应用程序软件(例如,JavaFX应用程序实例(110))的平台。更具体地说,在本发明的一个实施例中,Web启动小程序(106)包括取回和执行能够运行与JNLP文件(114)相关联的Java应用程序(例如,JavaFX应用程序实例(110))的Java运行时环境(JRE)(例如,FX设计器运行时实例(108))的功能。
在本发明的一个实施例中,JNLP文件(114)包括用于取回和执行JavaFX应用程序实例(110)的所有必需信息。所述信息可包括FX设计器运行时文件(114)、应用程序内容文件(116)和FX设计器工具文件(118)的网络位置。所述信息还可以包括为运行Java应用程序(例如,JavaFX应用程序实例(110))所必需的JRE(例如,FX设计器运行时实例(108))的版本号、配置和网络位置。此外,所述信息可指定用于给定计算机配置的JRE的版本号、配置和网络位置。例如,JNLP文件(例如,JNLP文件(114))可提供基于计算机的硬件规范、软件规范或网络通信速率的独立版本、配置和网络位置的有关信息。本领域的技术人员可理解其它信息可包括在JNLP文件(114)中。
在本发明的一个实施例中,Web启动小程序(106)利用JNLP文件(例如,JNLP文件(114))确定FX设计器运行时(例如,FX设计器运行时(108))的位置和配置。Web启动小程序(106)还可以包括向内容服务器(例如,内容服务器(104))请求与FX设计器运行时(例如,FX设计器运行时文件(116))相关联的文件的功能。FX设计器运行时文件(116)可被Web启动小程序(例如,Web启动小程序(106))用于实例化FX设计器运行时实例(例如,FX设计器运行时实例(108))。此外,Web启动小程序(106)可包括把用户浏览器(例如,用户浏览器(100))提供的JNLP文件(例如,JNLP文件(114))提供给FX设计器运行时实例(例如,FX设计器运行时实例(108))的功能。
在本发明的一个实施例中,FX设计器运行时实例(108)是包括利用JNLP文件(例如,JNLP文件(114))的内容来取回和执行与JNLP文件(例如,JNLP文件(114))相关联的Java应用程序(例如,JavaFX应用程序实例(110))的功能的JRE。JRE(或者更具体地说,JRE的实例(例如,FX设计器运行时实例(108)))提供操作系统和运行于JRE实例内的应用程序之间的一层软件。JRE实例包括使应用程序相对于主机的底层操作系统和硬件不可知的的功能。换句话说,具有在JRE实例内运行的能力的应用程序可在能够运行兼容JRE实例的任何机器上运行。
在本发明的一个实施例中,FX设计器运行时实例(108)向内容服务器(例如,内容服务器(104))请求内容文件(例如,JavaFX应用程序内容文件(118))。在本发明的一个实施例中,FX设计器运行时实例(108)利用内容文件(例如,JavaFX应用程序内容文件(118))加载(launch)应用程序实例(例如,JavaFX应用程序实例(110)。在本发明的一个实施例中,JavaFX应用程序内容文件(118)包括实例化应用程序实例(例如,JavaFX应用程序实例(110))所需的所有文件。JavaFX应用程序内容文件(118)可包括例如程序代码(例如,Java类,Java档案等),图形文件,音频文件等等。在本发明的一个实施例中,JavaFX应用程序内容文件(118)可分布在多于一个内容服务器(例如,内容服务器(104))上。在本发明的一个实施例中,一些JavaFX应用程序内容文件(118)只有当为运行的应用程序实例(例如,JavaFX应用程序实例(110))所需时才被取回。
在本发明的一个实施例中,内容服务器(104)是可以包括内容管理软件(例如,Mercurial,并发版本系统(CVS))的计算系统。在本发明的一个实施例中,内容服务器(104)存储运行应用程序实例(例如,JavaFX应用程序实例(110))必需的所有文件,包括FX设计器运行时文件(例如,FX设计器运行时文件(116))和内容文件(例如,JavaFX应用程序内容文件(118))。另外,内容服务器(104)还可以维护对寄宿的文件(例如,FX设计器运行时文件(116)、JavaFX应用程序内容文件(118))做出的改变的记录。在本发明的一个实施例中,内容服务器(104)包括生成与FX设计器运行时文件(例如,FX设计器运行时文件(116))和内容文件(例如,JavaFX应用程序内容文件(118))相关联的JNLP文件(例如,JNLP文件(114))的功能。在本发明的一个实施例中,当FX设计器运行时文件(例如,FX设计器运行时文件(116))或内容文件(例如,JavaFX应用程序内容文件(118))被变更时,内容服务器(104)自动生成更新的JNLP文件(例如,JNLP文件(114))。在本发明的一个实施例中,内容服务器(104)还包括把更新的JNLP文件(例如,JNLP文件(114))传送给web服务器(例如,Web服务器(102))的功能。
在本发明的一个实施例中,FX设计器运行时实例(108)可接收编辑JavaFX应用程序实例(例如,JavaFX应用程序实例(110))的请求。在本发明的一个实施例中,通过应用程序的实例(例如,JavaFX应用程序实例(110))接收该请求。在本发明的一个实施例中,通过FX设计器运行时实例(例如,FX设计器运行时实例(108))接收该请求。在本发明的一个实施例中,所述请求可以是只为应用程序的作者所知的用户输入的组合,从而只允许作者编辑该应用程序(例如,文本密码,有序的一系列鼠标点击,等等)。
在本发明的一个实施例中,内容服务器(104)通过向发出请求的FX设计器运行时实例(例如,FX设计器运行时实例(108))提供FX设计器工具文件(例如,FX设计器工具文件(120)),来对编辑应用程序的请求作出响应。在本发明的一个实施例中,FX设计器运行时实例(108)利用FX设计器工具文件(例如,FX设计器工具文件(120))创建FX设计器工具实例(例如,FX设计器工具实例(112))。在本发明的一个实施例中,FX设计器工具实例(112)包括变更内容文件(例如,JavaFX应用程序内容文件(118))的功能。更具体地说,FX设计器工具实例(112)可以包括变更存在于用户的计算机系统(例如,运行用户浏览器(100)的计算机系统)上的内容文件(未示出)的副本的功能。在本发明的一个实施例中,FX设计器工具实例(112)包括与应用程序实例(例如,JavaFX应用程序实例(110))的执行同时地变更内容文件(例如,JavaFX应用程序内容文件(118))的副本的功能。另外,对JavaFX应用程序内容文件做出的改变可被立即合并到在用户的计算机上运行的应用程序实例(例如,JavaFX应用程序实例(110))中。此外,在本发明的一个实施例中,FX设计器工具实例(112)包括把变更的内容文件(例如,JavaFX应用程序内容文件(118))发给内容服务器(例如,内容服务器(104))的功能。在本发明的一个实施例中,至少在变更的内容文件(例如,JavaFX应用程序内容文件(118))被发送给内容服务器(例如,内容服务器(104))之前,变更的JavaFX应用程序内容文件只是在作者的计算机(例如,运行用户浏览器(100)的计算机)上可用。
在本发明的一个实施例中,多于一个用户可同时执行JavaFX应用程序的实例(例如,JavaFX应用程序实例(110))。此外,在本发明的一个实施例中,在第二用户变更内容文件(例如,JavaFX应用程序内容文件(118))时,第一用户可同时向内容服务器(例如,内容服务器(104))请求内容文件(例如,JavaFX应用程序内容文件(118))。
图2表示根据本发明的一个或多个实施例,加载应用程序的流程图。在本发明的一个或多个实施例中,图2中所示的一个或多个步骤可被省略、重复和/或按与图2中所示顺序不同的顺序执行。因而,图2中所示步骤的具体排列不应被解释成对本发明的范围的限制。
在步骤210,客户端向Web服务器请求应用程序。在本发明的一个实施例中,客户端是受用户控制的用户浏览器。在本发明的一个实施例中,客户端向Web服务器发送对JavaFX应用程序的请求,而不具体请求JNLP文件。在步骤212,Web服务器把与应用程序相关联的JNLP文件提供给客户端。在步骤214,客户端把JNLP文件载入(load)Web启动小程序中。在步骤216,Web启动小程序向内容服务器请求与JNLP文件相关联的FX设计器运行时文件。在本发明的一个实施例中,FX设计器运行时文件被用于创建FX设计器运行时实例。在步骤218,Web启动小程序向内容服务器请求应用程序内容文件。在本发明的一个实施例中,该请求由FX设计器运行时发起。在本发明的一个实施例中,只请求为加载程序所必需的文件。在本发明的一个实施例中,应用程序内容文件包括Java档案文件。在步骤220,FX设计器运行时载入应用程序内容文件,并加载该应用程序。在本发明的一个实施例中,应用程序内容文件包括描述应用程序的行为的一个或多个文件(例如,Java类)。在本发明的一个实施例中,利用所有应用程序内容文件的子集,加载应用程序。在本发明的一个实施例中,根据应用程序实例的需要,向内容服务器请求应用程序内容文件。
图3表示根据本发明的一个或多个实施例加载和编辑应用程序的流程图。在本发明的一个或多个实施例中,图3中所示的一个或多个步骤可被省略、重复和/或按与图3中所示顺序不同的顺序执行。因而,图3中所示步骤的具体排列不应被解释成对本发明的范围的限制。
在步骤310,客户端经Web启动小程序,向Web服务器发送编辑应用程序的请求。在本发明的一个实施例中,可在关于图2说明的步骤之后进行步骤310。在本发明的一个实施例中,内容服务器通过向Web启动小程序发送FX设计器工具文件来做出响应。在步骤312,Web启动小程序载入与该应用程序相关联的FX设计器工具,从而创建FX设计器工具实例。在步骤314,客户端利用FX设计器工具实例,变更应用程序内容文件。在本发明的一个实施例中,变更应用程序内容文件可包括对图形或音频文件做出改变。在本发明的一个实施例中,变更应用程序内容文件可包括编辑指示应用程序中的要素的行为的代码。在本发明的一个实施例中,利用FX设计器工具,编辑应用程序内容文件。在步骤316,客户端发送提交对应用程序内容文件的改变的请求。在步骤318,新的应用程序内容文件被保存在内容服务器上。在步骤320,Web服务器参照新的应用程序内容文件,更新JNLP文件。在本发明的一个实施例中,参照变更的应用程序内容文件,生成新的JNLP文件。
图4表示根据本发明的一个实施例的示例性通信时间线。该示例性时间线并不意图限制本发明的范围。此外,对该示例性附图来说不必要的一些元件已被省略。
如图4中所示,示例性的通信时间线包括内容服务器(400)、客户端A(402)、Web服务器(404)和客户端B之间,在一段时间内的请求和响应。
在步骤410,客户端A(402)向Web服务器(404)请求应用程序。在步骤412,Web服务器(404)通过提供与该应用程序相关联的JNLP文件,来响应所述请求。在步骤414,客户端A(402)利用JNLP文件来定位为执行该应用程序所必需的文件,并且向内容服务器(400)请求这些文件。在步骤416,内容服务器(400)把与该应用程序相关联的FX设计器运行时文件提供给客户端A(402)。在步骤418,客户端A(402)请求与该应用程序相关联的应用程序内容文件。在步骤420,内容服务器(400)把应用程序内容文件提供给客户端A(402)。在步骤422,客户端A(402)执行应用程序。
继续示例性的图4的讨论,在步骤424,客户端B(406)向Web服务器(404)请求该应用程序。在步骤426,Web服务器(404)通过把与该应用程序相关联的JNLP文件提供给客户端B(406),来响应所述请求。在步骤428,客户端B(406)利用JNLP文件来定位为执行该应用程序所必需的文件,并且向内容服务器(400)请求这些文件。在步骤430,内容服务器(400)把与该应用程序相关联的FX设计器运行时文件和应用程序内容文件提供给客户端B(406)。在步骤432,客户端B(406)执行该应用程序。在步骤432,客户端A(402)和客户端B(406)都在执行应用程序的相同版本。
在步骤434,客户端A(402)向内容服务器(400)发送编辑应用程序的请求。在步骤436,内容服务器(400)通过向客户端A(402)提供FX设计器工具文件,来做出响应。在步骤438,客户端A(402)载入FX设计器工具,并编辑应用程序内容文件。在步骤440,客户端A(402)向内容服务器(400)指出应用程序内容文件已变更,更新的应用程序内容文件被发送给内容服务器(400)。在步骤442之前,客户端A(402)执行应用程序的新版本。同时,客户端B(406)执行缺少在步骤440中发送给内容服务器的更新的原始应用程序。在步骤442,内容服务器(400)通知Web服务器(404),应用程序已被更新。在本发明的一个实施例中,内容服务器(400)生成新的JNLP,并传送给Web服务器(404)。在本发明的一个实施例中,Web服务器(404)利用内容服务器(400)提供的信息,生成新的JNLP文件。
继续示例性的图4的讨论,在步骤444,客户端B(406)终止在步骤432实例化的应用程序的实例。在步骤446,客户端B(406)向Web服务器(404)请求该应用程序。在步骤448,Web服务器(404)通过向客户端B(406)提供与更新的应用程序相关联的新的JNLP文件,来响应所述请求。在步骤450,客户端B(406)利用新的JNLP文件来定位为执行更新的应用程序所必需的更新文件,并向内容服务器(400)请求这些文件。在步骤452,内容服务器(400)把与更新的应用程序相关联的FX设计器运行时文件和应用程序内容文件提供给客户端B(406)。在步骤454,客户端B(406)执行更新的应用程序。在步骤454,客户端A(402)和客户端B(406)都在执行应用程序的更新版本。
本发明的实施例实质上可以在任何种类的计算机上实现,而不管使用的平台。例如,如图5中所示,连网计算机系统(500)包括处理器(502),相关联的存储器(504),存储装置(506),和现今的计算机典型的众多其它元件和功能(未示出)。连网计算机系统(500)还可包括输入装置,比如键盘(508)和鼠标(510),和输出装置,比如监视器(512)。连网计算机系统(500)经网络接口连接(未示出),连接到局域网(LAN)或广域网。本领域的技术人员可以理解这些输入和输出装置可以采取其它形式。此外,本领域的技术人员可以理解上述计算机(500)的一个或多个元件可以位于远程位置,并通过网络与其它元件连接。此外,执行本发明的实施例的软件指令可存储在计算机可读介质,比如光盘(CD)、磁盘、磁带或任何其它物理计算机可读存储装置上。
虽然关于有限数目的实施例说明了本发明,不过受益于本公开,本领域的技术人员会理解可以设计出不脱离这里公开的本发明的范围的其它实施例。因而,本发明的范围只应由附加的权利要求限定。

Claims (22)

1.一种用于控制运行的应用程序的方法,包括:
由内容服务器从客户端接收对应用程序内容文件的第一请求,其中该应用程序内容文件与第一Java网络加载协议文件相关联;
响应于所述第一请求,发送所述应用程序内容文件,其中,所述应用程序内容文件用于在客户端上实例化应用程序实例;
从客户端经由应用程序实例接收编辑所述应用程序内容文件的第二请求;
响应于所述第二请求,向客户端发送应用程序设计器工具文件,其中,所述应用程序设计器工具文件用于与所述应用程序实例的执行同时地编辑所述应用程序内容文件以生成变更的应用程序内容文件,并且其中,所述变更的应用程序内容文件在所述应用程序实例的执行期间被合并到所述应用程序实例中;
从客户端接收利用所述应用程序设计器工具文件生成的变更的应用程序内容文件;
生成与变更的应用程序内容文件相关联的第二Java网络加载协议文件;和
将第二Java网络加载协议文件传送给web服务器。
2.根据权利要求1所述的方法,其中所述方法还包括:
由内容服务器从后来的客户端接收第三请求,其中第三请求包含至少一部分的第二Java网络加载协议文件;和
响应于第三请求,向所述后来的客户端发送变更的应用程序内容文件。
3.根据权利要求1或2所述的方法,其中所述应用程序内容文件是多个应用程序内容文件之一。
4.根据权利要求1或2所述的方法,其中第一Java网络加载协议文件包含所述应用程序内容文件的网络位置。
5.根据权利要求1或2所述的方法,其中响应于内容服务器提供所述应用程序内容文件,客户端执行与所述应用程序内容文件相关联的至少一个文件。
6.根据权利要求1或2所述的方法,其中所述应用程序内容文件是Java档案文件。
7.根据权利要求1或2所述的方法,其中内容服务器在第一计算系统上运行,其中客户端在第二计算系统上运行。
8.一种用于控制运行的应用程序的方法,包括:
由客户端向web服务器发送对应用程序的第一请求,其中应用程序与Java网络加载协议文件相关联;
从响应于第一请求的web服务器接收Java网络加载协议文件;
向内容服务器发送第二请求,其中第二请求包含至少一部分的Java网络加载协议文件;
从响应于第二请求的内容服务器接收应用程序内容文件;
使用所述应用程序内容文件来实例化应用程序实例;
经由所述应用程序实例向内容服务器发送编辑所述应用程序内容文件的第三请求;
从响应于第三请求的内容服务器接收应用程序设计器工具文件;
在应用程序实例在客户端上运行的同时,利用应用程序设计器工具文件编辑所述应用程序内容文件,以生成变更的应用程序内容文件;
在所述应用程序实例在所述客户端上运行的同时,将所述变更的应用程序内容文件合并到所述应用程序实例中;和
向内容服务器发送包含变更的应用程序内容文件的第四请求。
9.根据权利要求8所述的方法,其中所述方法还包括:
由后来的客户端向web服务器发送对所述应用程序的第五请求;
从响应于第五请求的web服务器接收新的Java网络加载协议文件;
向内容服务器发送第六请求,其中第六请求包含至少一部分的所述新的Java网络加载协议文件;以及
从响应于第六请求的内容服务器接收变更的应用程序内容文件。
10.根据权利要求8或9所述的方法,其中应用程序内容文件是多个应用程序内容文件之一。
11.根据权利要求8或9所述的方法,其中Java网络加载协议文件包含应用程序内容文件的网络位置。
12.根据权利要求8或9所述的方法,其中响应于内容服务器提供应用程序内容文件,客户端执行所述应用程序内容文件。
13.根据权利要求8或9所述的方法,其中应用程序内容文件是Java档案文件。
14.根据权利要求8或9所述的方法,其中内容服务器运行于第一计算系统上,并且其中客户端运行于第二计算系统上。
15.一种用于控制运行的应用程序的装置,包括:
用于由内容服务器从客户端接收对应用程序内容文件的第一请求的装置,其中该应用程序内容文件与第一Java网络加载协议文件相关联;
用于响应于所述第一请求,发送所述应用程序内容文件的装置,其中,所述应用程序内容文件用于在客户端上实例化应用程序实例;
用于从客户端经由所述应用程序实例接收编辑所述应用程序内容文件的第二请求的装置;
用于响应于所述第二请求,向客户端发送应用程序设计器工具文件的装置,其中,所述应用程序设计器工具文件用于与所述应用程序实例的执行同时地编辑所述应用程序内容文件以生成变更的应用程序内容文件,并且其中,所述变更的应用程序内容文件在所述应用程序实例的执行期间被合并到所述应用程序实例中;
用于从客户端接收利用所述应用程序设计器工具文件生成的变更的应用程序内容文件的装置;
用于生成与变更的应用程序内容文件相关联的第二Java网络加载协议文件的装置;和
用于将第二Java网络加载协议文件传送给web服务器的装置。
16.一种用于控制运行的应用程序的装置,包括:
用于由客户端向web服务器发送对应用程序的第一请求的装置,其中应用程序内容文件与Java网络加载协议文件相关联;
用于从响应于第一请求的web服务器接收Java网络加载协议文件的装置;
用于向内容服务器发送第二请求的装置,其中第二请求包含至少一部分的Java网络加载协议文件;
用于从响应于第二请求的内容服务器接收应用程序内容文件的装置;
用于使用所述应用程序内容文件来实例化应用程序实例的装置;
用于经由所述应用程序实例向内容服务器发送编辑所述应用程序内容文件的第三请求的装置;
用于从响应于第三请求的内容服务器接收应用程序设计器工具文件的装置;
用于在应用程序实例在客户端上运行的同时,利用应用程序设计器工具文件编辑所述应用程序内容文件,以生成变更的应用程序内容文件的装置;
用于在所述应用程序实例在所述客户端上运行的同时,将所述变更的应用程序内容文件合并到所述应用程序实例中的装置;和
用于向内容服务器发送包含变更的应用程序内容文件的第四请求的装置。
17.一种用于控制运行的应用程序的系统,包括:
客户端,被配置为向内容服务器发送对应用程序内容文件的第一请求,其中应用程序内容文件与第一Java网络加载协议文件相关联,从所述内容服务器接收所述应用程序内容文件,利用所述应用程序内容文件在所述客户端上实例化应用程序实例,经由所述应用程序实例向所述内容服务器发送编辑所述应用程序内容文件的第二请求,从所述内容服务器接收应用程序设计器工具文件,利用所述程序设计器工具文件与所述应用程序实例的执行同时地编辑所述应用程序内容文件以生成变更的应用程序内容文件,将所述变更的应用程序内容文件在所述应用程序实例的执行期间合并到所述应用程序实例中,以及向所述内容服务器发送所述变更的应用程序内容文件;
所述内容服务器,其具有所述应用程序内容文件,被配置为从所述客户端接收第一请求,并响应于所述第一请求,向所述客户端发送所述应用程序内容文件,从所述客户端接收第二请求,并响应于所述第二请求向客户端发送应用程序设计器工具文件,从客户端接收所述变更的应用程序内容文件,生成与变更的应用程序内容文件相关联的第二Java网络加载协议文件,以及向web服务器发送第二Java网络加载协议文件;以及
所述web服务器,被配置为从所述内容服务器接收所述第二Java网络加载协议文件。
18.根据权利要求17所述的系统,其中内容服务器还被配置成:
从后来的客户端接收第三请求,其中第三请求包含至少一部分的第二Java网络加载协议文件;和
响应于第三请求,向所述后来的客户端发送变更的应用程序内容文件。
19.根据权利要求17或18所述的系统,其中应用程序内容文件是多个应用程序内容文件之一。
20.根据权利要求17或18所述的系统,其中第一Java网络加载协议文件包含应用程序内容文件的网络位置。
21.根据权利要求17或18所述的系统,其中响应于内容服务器提供应用程序内容文件,客户端执行与应用程序内容文件相关联的至少一个文件。
22.根据权利要求17或18所述的系统,其中应用程序内容文件是Java档案文件。
CN201180002458.5A 2010-05-24 2011-05-13 控制运行的应用程序以便进行实时场景图编辑 Active CN102473103B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US12/786,113 2010-05-24
US12/786,113 US9430222B2 (en) 2010-05-24 2010-05-24 Controlling a running application for live scene graph editing
PCT/US2011/036469 WO2011149687A1 (en) 2010-05-24 2011-05-13 Controlling a running application for live scene graph editing

Publications (2)

Publication Number Publication Date
CN102473103A CN102473103A (zh) 2012-05-23
CN102473103B true CN102473103B (zh) 2015-11-25

Family

ID=44121247

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201180002458.5A Active CN102473103B (zh) 2010-05-24 2011-05-13 控制运行的应用程序以便进行实时场景图编辑

Country Status (4)

Country Link
US (1) US9430222B2 (zh)
EP (1) EP2435912B1 (zh)
CN (1) CN102473103B (zh)
WO (1) WO2011149687A1 (zh)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8972543B1 (en) * 2012-04-11 2015-03-03 Spirent Communications, Inc. Managing clients utilizing reverse transactions
WO2015171549A2 (en) * 2014-05-05 2015-11-12 Citrix Systems, Inc. Facilitating communication between mobile applications
US10404783B2 (en) * 2017-08-16 2019-09-03 Vmware, Inc. Outside-of-network management of a component in a virtual data center
US11025453B2 (en) 2018-03-23 2021-06-01 Vmware, Inc. Outside-of-network management of a component in a virtual data center using a remote display on a host management server
AU2019263471A1 (en) * 2018-05-04 2020-11-26 Benjamin William LAIBSON Emulation of cloud computing service regions
US11809839B2 (en) 2022-01-18 2023-11-07 Robert Lyden Computer language and code for application development and electronic and optical communication

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101387953A (zh) * 2007-09-14 2009-03-18 环达电脑(上海)有限公司 协同软件开发系统及方法

Family Cites Families (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5999972A (en) * 1996-07-01 1999-12-07 Sun Microsystems, Inc. System, method and article of manufacture for a distributed computer system framework
US6230309B1 (en) * 1997-04-25 2001-05-08 Sterling Software, Inc Method and system for assembling and utilizing components in component object systems
GB2329490B (en) * 1997-09-19 2002-06-05 Ibm Remote application design
US6973640B2 (en) * 2000-10-04 2005-12-06 Bea Systems, Inc. System and method for computer code generation
KR20040019378A (ko) * 2001-07-31 2004-03-05 아메리칸 익스프레스 트레블 릴레이티드 서비스즈 컴퍼니, 아이엔씨. 재정 계획 및 자문 제공 시스템 및 방법
US7228353B1 (en) * 2002-03-28 2007-06-05 Emc Corporation Generating and launching remote method invocation servers for individual client applications
US7702636B1 (en) * 2002-07-31 2010-04-20 Cadence Design Systems, Inc. Federated system and methods and mechanisms of implementing and using such a system
US7523116B2 (en) * 2003-10-30 2009-04-21 International Business Machines Corporation Selection of optimal execution environment for software applications
US7117113B1 (en) * 2004-03-01 2006-10-03 Cisco Technology, Inc. Automated data collection and analysis
US7665064B2 (en) * 2004-05-14 2010-02-16 Gt Software, Inc. Systems and methods for web service function, definition, implementation, and/or execution
US7703024B2 (en) * 2004-08-31 2010-04-20 Sap Ag Obtaining a graphical user interface to access a remote computing system
US20060218228A1 (en) * 2005-03-24 2006-09-28 Security First Technologies Corp Client platform architecture
EP1872212A4 (en) * 2005-04-18 2009-01-14 Research In Motion Ltd DETECTION AND CONSTRUCTION OF COMPONENT APPLICATIONS BASED ON NOTIFICATION
US20070129014A1 (en) * 2005-11-18 2007-06-07 Bertorello, Inc. Information synchronization
JP2007179171A (ja) * 2005-12-27 2007-07-12 Internatl Business Mach Corp <Ibm> 秘密保持が要求されるモデル用のソフトウエア開発装置
US20080114641A1 (en) * 2006-11-15 2008-05-15 Christopher Keenum Process and apparatus for marketing data collection and analysis aggregation of funds
US20080208602A1 (en) * 2007-01-09 2008-08-28 Westernoff W Gary Method and apparatus for an on-line building registry and organizer
US20080209392A1 (en) * 2007-02-26 2008-08-28 Able Steve L Systems and Methods for Definition and Execution of Batch Processing Services
US8117601B2 (en) * 2007-11-14 2012-02-14 Microsoft Corporation Internal test and manipulation of an application
US20090128365A1 (en) * 2007-11-19 2009-05-21 Laskin Bruce Steven Methods and systems for delivering real-time traffic video to a handheld device
WO2009097350A1 (en) * 2008-01-29 2009-08-06 Palm, Inc. Secure application signing
JP5521284B2 (ja) * 2008-05-14 2014-06-11 セイコーエプソン株式会社 測位方法及び測位装置
US8850409B2 (en) * 2008-05-21 2014-09-30 Optumsoft, Inc. Notification-based constraint set translation to imperative execution
US9703443B2 (en) * 2008-09-25 2017-07-11 Oracle America, Inc. Method and system for creating a free-form visual user interface element
US8214795B2 (en) * 2008-11-26 2012-07-03 Optumsoft, Inc. Efficient automated translation of procedures in constraint-based language

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101387953A (zh) * 2007-09-14 2009-03-18 环达电脑(上海)有限公司 协同软件开发系统及方法

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
Groovy 使 Spring 更出色,第 2 部分:在运行时改变应用程序的行为;Scott Leberknight;《http://www.ibm.com/developerworks/cn/java/j-groovierspring2.html#toggle》;20090213;正文第1页第2段、第2页第2段-最后1段 *
Server Side C-DASH:Ubiquitous Hardware/Software Codesign Environment;Hideaki Yanagisawa 等;《Proceedings of the 7th International Conference on Mobile Data Management》;20060512;正文第1页右栏第2-3段、第2页左栏第1-6段、第3页左栏倒数第2段-第4页右栏第1段,图2-3 *

Also Published As

Publication number Publication date
CN102473103A (zh) 2012-05-23
EP2435912B1 (en) 2018-12-26
WO2011149687A1 (en) 2011-12-01
US9430222B2 (en) 2016-08-30
US20110289192A1 (en) 2011-11-24
EP2435912A1 (en) 2012-04-04

Similar Documents

Publication Publication Date Title
US9342364B2 (en) Workflow managed composite applications
KR101574366B1 (ko) 가상 머신 및 애플리케이션 수명들의 동기화
US9588752B2 (en) Performing unattended software installation
CN102473103B (zh) 控制运行的应用程序以便进行实时场景图编辑
US9354776B1 (en) Applied client-side service integrations in distributed web systems
CN101211272B (zh) 虚拟机生成器、虚拟机生成方法和虚拟机管理器
US8418169B2 (en) Management method for managing software module and information processor
US9298441B2 (en) Generating and using constraints associated with software related products
JP2007272763A (ja) モジュールインストール方法及び装置
US9904574B2 (en) Parallel computing without requiring antecedent code deployment
JP2016064591A (ja) 情報処理装置、その制御方法、プログラム。
US7752138B1 (en) Dynamic licensing in a distributed system
JP6002302B2 (ja) Webアプリケーション生成システム、Webアプリケーション生成システムの制御方法、Webアプリケーション生成システムのプログラム、Webアプリケーション生成装置、Webアプリケーション生成装置の制御方法、およびWebアプリケーション生成装置のプログラム
US7836449B2 (en) Extensible infrastructure for task display and launch
CN115794253A (zh) 应用集成方法、装置、电子设备及计算机可读存储介质
CN112395096A (zh) 远程函数调用的处理方法、装置、电子设备及存储介质
JP2009266149A (ja) ジョブ管理プログラム及びジョブ管理装置
KR20070061098A (ko) 임베디드 리눅스 커널 및 응용 프로그램의 통합 설정을위한 웹 기반의 개발환경 제공 시스템 및 방법
CN115315696A (zh) 网站的自动创建和部署
CN101639783A (zh) 按订单配置型软件的部署和管理
WO2001093021A2 (en) A virtual system configurator for client systems
JP7289940B2 (ja) プログラムのセット、記憶媒体、及び情報処理方法
JP5023169B2 (ja) 要実行パッチリスト作成装置および方法
JP5359704B2 (ja) プログラム生成システムおよびプログラム生成装置およびプログラム生成方法およびプログラムならびに記録媒体
JP2001249801A (ja) ソフトウエアインストール装置、及び、記憶媒体

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