gpt4 book ai didi

osgi - 从 Java 访问 Karaf cfg 文件中的属性?

转载 作者:行者123 更新时间:2023-12-04 20:00:38 24 4
gpt4 key购买 nike

我在蓝图中使用 cm:property-placeholder 来加载配置文件:

<!-- External configuration -->
<cm:property-placeholder persistent-id="mubyndle" update-strategy="reload">
<cm:default-properties>
<cm:property name="schemaValidation" value="false"/>
</cm:default-properties>
</cm:property-placeholder>

<bean id="myBean" class="com.mybean">
<property name="abc" value="${abc}" />
</bean>

我可以将值设置到 bean 中,例如 ${abc}。
如何从 java 访问配置的任何其他属性?

我打算添加属性列表: Prop 1=11prop2=22...propn=nn

由于数量不同,我无法在蓝图中添加所有内容。

谢谢,维克托

最佳答案

在蓝图中添加对ConfigurationAdmin服务的引用:
<reference id="configAdmin" interface="org.osgi.service.cm.ConfigurationAdmin" />

将其设置为bean:
<bean id="myBean" class="com.mybean">
<property name="abc" value="${abc}" />
<property name="configAdmin" ref="configAdmin" />
</bean>

bean 类中:
private ConfigurationAdmin configAdmin;

public void setConfigAdmin(ConfigurationAdmin configAdmin) throws IOException {
this.configAdmin = configAdmin;

System.out.println(configAdmin);
System.out.println(configAdmin.getConfiguration("any-persistent-id").getProperties());
}

关于osgi - 从 Java 访问 Karaf cfg 文件中的属性?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33827710/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com