如何远程访问OSGi包信息

时间:2017-11-25 11:14:28

标签: java osgi remote-access

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

  1. 导出的包和版本
  2. 导入的包和版本
  3. 捆绑状态
  4. 服务所需的信息:

    1. 已实施界面
    2. 排序
    3. 路径,资源类型,Servlet的选择器
    4. 我们怎样才能通过Java程序收集上述所有信息?

        

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

1 个答案:

答案 0 :(得分:0)

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

URI framework/bundles将列出可使用framework/bundle/{bundleid}进行内省的捆绑,framework/services将列出可使用framework/service/{serviceid}进行内省的服务

根据要求,此解决方案不使用远程服务,但正如其中一条评论中所述,如果不安装某些东西,就无法内省远程OSGi框架。在这种情况下,您必须将REST管理服务实现添加到远程框架。