Hi, Have you tried to add <cm:default-properties> into <cm:property-placeholder> ? for example,
<cm:property-placeholder persistent-id="org.opennaas" update-strategy="reload"> <cm:default-properties> <cm:property name="abc" value="......"/> <cm:property name="efg" value="......."/> </cm:default-properties> </cm:property-placeholder> Regards. Xilai ________________________________ 发件人: Adrián Roselló Rey [adrian.rose...@i2cat.net] 发送时间: 2014年4月1日 22:33 到: user@karaf.apache.org 主题: services published and unpublished in karaf 3.0.0 Hi all! I'm upgrading my software, which was deployed in top of Karaf 2.2.11, to Karaf 3.0.0 version. I'm almost finished with the upgrade, but I'm having some strange problems when starting specific bundles. I publish my OSGI services via blueprint. I also use dOSGI to expose my services through WS like this: <bean id="vcpeNetworkManager" class="org.opennaas.extensions.vcpe.manager.VCPENetworkManager" destroy-method="destroy"/> <service ref="vcpeNetworkManager" interface="org.opennaas.extensions.vcpe.manager.IVCPENetworkManager"> <service-properties> <!-- Rest --> <entry key="service.exported.interfaces" value="*"/> <entry key="service.exported.configs" value="org.apache.cxf.rs<http://org.apache.cxf.rs>"/> <entry key="service.exported.intents" value="HTTP"/> <entry key="org.apache.cxf.rs.httpservice.context" value="${ws.rest.url}/vcpenetwork"/> <entry key="org.apache.cxf.rs.address" value="/"/> <entry key="org.apache.cxf.httpservice.requirefilter" value="true"/> </service-properties> </service> In order to get the value of the ${ws.rest.url} property, I added the property-placeholder feature provided by blueprint-cm: <cm:property-placeholder persistent-id="org.opennaas" update-strategy="reload" /> It works perfectly, but when I install this bundle (and all of them declaring this placeholder) the services declared in the blueprint are published are unpublished rrepeatedly for a while. For example, here you can find an extract of my log file: 16:26:16,246 INFO | xtender: 3 | .manager.VCPENetworkManager | Starting VCPENetworkManager 16:26:16,256 INFO | hread-3624 | .manager.VCPENetworkManager | Stopping VCPENetworkManager 16:26:16,279 INFO | xtender: 1 | .manager.VCPENetworkManager | Starting VCPENetworkManager 16:26:16,290 INFO | hread-3626 | .manager.VCPENetworkManager | Stopping VCPENetworkManager 16:26:16,306 INFO | xtender: 2 | .manager.VCPENetworkManager | Starting VCPENetworkManager 16:26:16,316 INFO | hread-3628 | .manager.VCPENetworkManager | Stopping VCPENetworkManager 16:26:16,335 INFO | xtender: 3 | .manager.VCPENetworkManager | Starting VCPENetworkManager 16:26:16,342 INFO | hread-3630 | .manager.VCPENetworkManager | Stopping VCPENetworkManager 16:26:16,378 INFO | xtender: 1 | .manager.VCPENetworkManager | Starting VCPENetworkManager 16:26:16,396 INFO | hread-3632 | .manager.VCPENetworkManager | Stopping VCPENetworkManager I suggest it has something to do with blueprint-cm because I see this behaviour only in bundles with the property-placeholder declaration in blueprint. Could it be possible? If not, any idea on what could be happening? Thanks! -- Adrián Roselló Rey Distributed Applications and Networks Area (DANA) i2CAT Foundation, Barcelona, Spain