自动更新远程 osgi 实例(swing gui)
我计划在典型的客户端服务器(带有 swing gui)应用程序中使用 osgi。使用 fileinstall 可以轻松地将捆绑包热部署到服务器,但现在我正在 GUI 上寻找类似的东西。
GUI 是通过 webstart 启动的,但我想更新包而不要求用户关闭并重新启动。
我计划有一个服务器端包,它监视包含包的目录,通过 http 公开包,并在发生更改时通知客户端。客户端捆绑包将侦听通知并使用 BundleContext 和 Bundle 上的方法进行捆绑包安装/更新。
(注意:我已经在服务器和客户端之间有一个类似 RMI 的链接,可用于通知)
是否有任何东西已经这样做或类似的?
我至少想为文件系统监视部分重用 fileinstall,但我不希望在服务器上启动 GUI 包。
I am planning to use osgi in a typical client-server (with swing gui) application. Hot deploying bundles to the server is made easy with fileinstall but now I am looking for something similar on the GUI.
The GUI is started with webstart but I want to update bundles without asking the user to close and restart.
I was planning to have a server side bundle which monitors a directory containing bundles, exposes the bundles over http and notifies the clients when something has changed. A client side bundle would listen for the notifications and do the bundle installs/updates using the methods on BundleContext and Bundle.
(Note: I already have an RMI like link between the server and clients which can be used for the notifications)
Is there anything which already does this or similar?
I would at least like to reuse fileinstall for the filesystem watching part but I don't want the GUI bundles started on the server.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
P2 是一个针对基于 OSGi 的应用程序的出色配置系统。 Eclipse 使用它,甚至对于非 OSGi 应用程序也有很多用途。在开始构建自己的更新系统之前,您绝对应该看一下它。您还可以查看 Apache Ace。
P2 is a great provisioning system for OSGi based applications. Eclipse uses it, and there are a lot of uses even for non-OSGi applications. You should definitely have a look at it before you start building you own update system. You can also check Apache Ace.
Paremus Service Fabric 的分形示例在这里可能具有指导意义 ( https://docs.paremus.com/显示/SF16/演示)。在此示例中,服务器端和客户端 OSGi 包都可以动态安装。还支持 RMI。
问候
理查德
The Fractal example for the Paremus Service Fabric may be instructive here ( https://docs.paremus.com/display/SF16/Demonstration ). In this example both Server and Client side OSGi bundles may be dynamically installed. RMI is also supported.
Regards
Richard