2017-11-25 166 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管理服務實施添加到遠程框架。