Perhaps it might help to show the DTO you've dumped here so more eyes can look at it.
Sincerely, - Ray On Tue, Oct 18, 2016 at 8:46 AM, Benson Margulies <bimargul...@gmail.com> wrote: > On Tue, Oct 18, 2016 at 8:40 AM, Timothy Ward <tim.w...@paremus.com> > wrote: > > How are you creating the configuration? > > > > Configuration Admin uses the concept of a bundle location to restrict > the visibility of a pid to a particular bundle. This almost always trips > people up when they create the configuration themselves (i.e. in code) as > the “default” methods bind the configuration to the bundle creating it > (rarely what you actually want). > > I carefully use a 'null' location: > > configurationAdmin.getConfiguration(pid, null); > > which I thought was the right recipe. > > Here's some debug from felix CM: > > 08:37:00.164 [CM Event Dispatcher (Fire ConfigurationEvent: > pid=com.basistech.ws.headless.config)] DEBUG > org.apache.felix.configadmin.1.8.10 - > [[org.osgi.service.cm.ConfigurationAdmin]]getConfiguration(pid=com. > basistech.ws.bus, > location=null) > 08:37:00.164 [CM Event Dispatcher (Fire ConfigurationEvent: > pid=com.basistech.ws.headless.config)] DEBUG > org.apache.felix.configadmin.1.8.10 - > [[org.osgi.service.cm.ConfigurationAdmin]]No SecurityManager > installed; grant CONFIGURE permission on configuration bound to * to > bundle /Users/benson/x/rosapi-on-premise/embedded/test/../pre- > package/target/bundles/base/rosapi-headless-config-reader- > 1.4.101-SNAPSHOT.jar > 08:37:00.164 [CM Event Dispatcher (Fire ConfigurationEvent: > pid=com.basistech.ws.headless.config)] DEBUG > org.apache.felix.configadmin.1.8.10 - > [[org.osgi.service.cm.ConfigurationAdmin]]createConfiguration(com. > basistech.ws.bus, > null, null) > 08:37:00.165 [CM Event Dispatcher (Fire ConfigurationEvent: > pid=com.basistech.ws.headless.config)] DEBUG > org.apache.felix.configadmin.1.8.10 - > [[org.osgi.service.cm.ConfigurationAdmin]]update( > properties={licensePathname=/Users/benson/x/rosapi-on- > premise/embedded/test/target/test-config/rosapi/rlp-license.xml}) > org.apache.felix.configadmin.1.8.10 - > [[org.osgi.service.cm.ConfigurationAdmin]]Updating config > com.basistech.ws.bus with > {licensePathname=/Users/benson/x/rosapi-on-premise/ > embedded/test/target/test-config/rosapi/rlp-license.xml} > 08:37:00.166 [CM Event Dispatcher (Fire ConfigurationEvent: > pid=com.basistech.ws.headless.config)] DEBUG > org.apache.felix.configadmin.1.8.10 - > [[org.osgi.service.cm.ConfigurationAdmin]]No > SynchronousConfigurationListeners to send CM_UPDATED event to. > 08:37:00.166 [CM Event Dispatcher (Fire ConfigurationEvent: > pid=com.basistech.ws.headless.config)] DEBUG > org.apache.felix.configadmin.1.8.10 - > [[org.osgi.service.cm.ConfigurationAdmin]]Scheduling task Fire > ConfigurationEvent: pid=com.basistech.ws.bus > 08:37:00.166 [CM Event Dispatcher (Fire ConfigurationEvent: > pid=com.basistech.ws.headless.config)] DEBUG > org.apache.felix.configadmin.1.8.10 - > [[org.osgi.service.cm.ConfigurationAdmin]]Scheduling task Update: > pid=com.basistech.ws.bus > 08:37:00.166 [CM Event Dispatcher (Fire ConfigurationEvent: > pid=com.basistech.ws.headless.config)] DEBUG > org.apache.felix.configadmin.1.8.10 - > [[org.osgi.service.cm.ConfigurationAdmin]]UpdateConfiguration(com. > basistech.ws.bus) > scheduled > > > > > > > Also, if your component is not immediate *and* it provides a service > then it will not activate until somebody “gets” the service. > > Yes, but I have 10 other components stuck waiting for it, so that > problem should be solved. > > While I thank you for advice on diagnosing the problem, I also want to > remind you that my original question is how the state is reflected in > the DTOs. Solving the actual problem is probably just a matter of log > comparison with the working environment. > > > > > > Regards, > > > > Tim > > > > > >> On 18 Oct 2016, at 12:47, Benson Margulies <bimargul...@gmail.com> > wrote: > >> > >> Here's my puzzle. > >> > >> I have a set of services that all have unsatisfied references to the > >> same thing - a vanilla @Reference to the interface WorkerBusService. > >> > >> In each case, there is a configuration DTO with an unsatisfied > >> reference with name BusConfigured and target null. > >> > >> WorkerBusService is implemented by an @Component named BusService. > >> > >> it has a required configuration pid and is _not_ immediate. The > >> configuration should be there, I see a log message corresponding to my > >> code that updates it into place. > >> > >> When things time out, BusService has no configuration dtos at all, > >> just the description DTO. So, how do I tell why it hasn't started? > >> Note that this is an environment where I can't use the shell, so I've > >> basically written code that dumps useful output from the introspection > >> into a String. > >> > >> Note that all this works in a slightly different environment, and I'm > >> trying to hone these diagnostic tools rather than brute-force a > >> comparison to explain the discrepancy. > >> _______________________________________________ > >> OSGi Developer Mail List > >> osgi-dev@mail.osgi.org > >> https://mail.osgi.org/mailman/listinfo/osgi-dev > > > > _______________________________________________ > > OSGi Developer Mail List > > osgi-dev@mail.osgi.org > > https://mail.osgi.org/mailman/listinfo/osgi-dev > _______________________________________________ > OSGi Developer Mail List > osgi-dev@mail.osgi.org > https://mail.osgi.org/mailman/listinfo/osgi-dev > -- *Raymond Augé* <http://www.liferay.com/web/raymond.auge/profile> (@rotty3000) Senior Software Architect *Liferay, Inc.* <http://www.liferay.com> (@Liferay) Board Member & EEG Co-Chair, OSGi Alliance <http://osgi.org> (@OSGiAlliance)
_______________________________________________ OSGi Developer Mail List osgi-dev@mail.osgi.org https://mail.osgi.org/mailman/listinfo/osgi-dev