可以在沙箱中运行的Mini-OSGi(如AppEngine或WebStart)? [英] Mini-OSGi that can run in a sandbox (like AppEngine or WebStart)?

查看:104
本文介绍了可以在沙箱中运行的Mini-OSGi(如AppEngine或WebStart)?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我非常喜欢OSGi实现的模块化捆绑包的概念。我还喜欢Google AppEngine(用于Web应用程序)或Java WebStart的托管部署服务(用于客户端软件)。



这两个想法似乎在概念上相辅相成。

然而,

然而, ,OSGi标准包含一些功能,使像Felix或Equinox这样的实现无法在沙盒虚拟机(如AppEngine或Webstart)上运行。在这些环境中,不可能直接访问文件系统,例如,排除用于存储持久性捆绑软件状态和本地库的OSGi捆绑缓存。



现在,我对使用本地库没有太大的兴趣,或者拥有持久的捆绑状态。是否有一些框架实现了OSGi的核心捆绑和服务概念(理想情况下采用兼容的方式,以便OSGi捆绑包可以部署到其中),但是可以在没有捆绑缓存的情况下工作(以及沙盒中不可用的其他工具) ?



我正在寻找类似于限制版的Felix的AppEngine或WebStart。



当然,如果WebStart引擎和Google AppEngine刚刚提供了OSGi框架服务,这些服务也是非常棒的...



更新: AppEngine的另一个非常有限的方面是您无法启动新的线程。这可以防止(除其他之外)异步捆绑软件生命周期管理。显然这并不是WebStart的问题。

解决方案

EclipseSource有一个补丁版本的osgi引擎,该项目从博客压缩文件: http://eclipsesource.com / blogs / 2009/04/10 / osgi-on-appengine /

I really like the concept of modular bundles as implemented by OSGi.

I also like "managed deployment" services like Google AppEngine (for web application) or Java WebStart (for client software).

These two ideas seem to complement each-other rather well conceptually.

However, the OSGi standard includes a couple of features that make it impossible for implementations like Felix or Equinox to run on top of sandboxed virtual machines, such as AppEngine or Webstart. In these environments, it is not possible to get direct access to a file system, for example, which precludes the OSGi bundle cache that is used to store persistent bundle state and native libraries.

Now, I have no great interest in using native libraries or have persistent bundle state. Is there some framework that implements the core bundle and services concept of OSGi (ideally in a compatible way so that OSGi bundles can be deployed into it as is), but can work without a bundle cache (and other facilities not available in a sandbox)?

I am looking for something like a limited version of Felix that works on AppEngine or WebStart.

Of course, if the WebStart engine and the Google AppEngine just provided OSGi framework services out-of-the-box that would be great, too...

Update: Another very limiting aspect of AppEngine is that you cannot start new Threads. This prevents (among other things) asynchronous bundle life-cycle management. Obviously not an issue with WebStart.

解决方案

EclipseSource have a patched version of osgi engine that (kind of) working in AppEngine, download the project zip files from the blog: http://eclipsesource.com/blogs/2009/04/10/osgi-on-appengine/

这篇关于可以在沙箱中运行的Mini-OSGi(如AppEngine或WebStart)?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆