So lesen Sie OSGi-Konfigurationen, die nicht an die ausführende Komponente gebunden sind.

Umgebung

Schritte

Der empfohlene Ansatz zum Lesen verschiedener OSGi-Konfigurationen besteht darin, den ConfigurationAdmin [1] zu verwenden, und nicht nach den Konfigurationsdateien in Ihrer Anwendung zu suchen. Siehe den Beispielcode hier [2].

[1] https://osgi.org/javadoc/r4v42/org/osgi/service/cm/ConfigurationAdmin.html
[2] http://felix.apache.org/documentation/subprojects/apache-felix-config-admin.html

Der ConfigurationAdmin ist ein OSGi-Dienst, so dass er über SCR-Anmerkung in Ihrem eigenen OSGi-Komponentencode abgerufen werden kann.  Beispiel unten (org.sample.PrettyPrinterConfigurator ist der PID der Konfiguration):

@Reference
ConfigurationAdmin configAdmin;

@Activate
public void activate(ComponentContext componentContext) {
  Configuration config = configurationAdmin.getConfiguration(
    "org.sample.PrettyPrinterConfigurator");
  Dictionary props = config.getProperties();
}