2017-11-25 156 views
-1

我需要访问有关远程AEM应用程序(Apache Felix)的所有捆绑软件和服务的信息。 需要包的信息:如何远程访问OSGi捆绑包信息

  1. 导出包和版本
  2. 导入的包和版本
  3. 捆绑状态

需要的服务信息:

  1. 实现的接口
  2. 排名
  3. 路径,resourceTypes,选择了Servlet的

我们怎么能可能聚拢通过Java程序中的所有上述信息?

我无法在OSGi容器上部署任何自定义远程服务。必须通过外部执行的远程Java程序来收集所有的细节。

+0

您使用哪个OSGi容器?另外,请检查OSGi容器的API如何获取已安装的软件包列表。编辑你的问题以包含你想要做的描述,因为它听起来像一个[X-Y问题](https://meta.stackexchange.com/questions/66377/what-is-the-xy-problem)。 – Progman

+0

你想看看远程OSGi框架,但你不允许安装任何软件包?我不认为这是可能的,对不起。 –

回答

0

OSGi Compendium的第137章定义了OSGi REST管理服务。这提供了您在简单的REST模型中使用标准DTO所要求的所有信息。

的URI framework/bundles将列出可使用framework/bundle/{bundleid}被内省包和framework/services将列出可使用framework/service/{serviceid}

按照要求进行内省的服务,该解决方案不使用的远程服务,但作为一个提到的的评论,没有办法在没有安装东西的情况下反思远程OSGi框架。在这种情况下,您必须将REST管理服务实施添加到远程框架。