Dirk: I don’t think Artem was asking about activation of the component, he has a problem with service registration. So whether the component is immediate or delayed seems to be irrelevant.
Artem: there are a few things you need to check. Is your bundle active? Do you have a DS implementation bundle (such as org.apache.felix.scr, or org.eclipse.equinox.ds) installed and active? Regards, Neil > On 20 Jan 2015, at 11:09, Dirk Rudolph <[email protected]> wrote: > > Try to add immediate=“true” to your component definition. This should result > in something like > >> <?xml version="1.0" encoding="UTF-8"?><components >> xmlns:scr="http://www.osgi.org/xmlns/scr/v1.0.0"> >> <scr:component immediate=“true” name="ru.multicabinet.gateway.ExampleDS"> >> <implementation class="ru.multicabinet.gateway.ExampleDS"/> >> <service servicefactory="false"> >> <provide interface="ru.multicabinet.gateway.SimpleI"/> >> </service> >> <property name="service.pid" >> value="ru.multicabinet.gateway.ExampleDS"/> >> </scr:component> >> </components> > > and causes the component to be started immediately after it has been > registered. > > Kind regards, > Dirk Rudolph | Senior Software Engineer > > Netcentric AG > > M: +41 79 642 37 11 > D: +49 174 966 84 34 > > [email protected] <mailto:[email protected]> | > www.netcentric.biz <http://www.netcentric.biz/> >> On 20 Jan 2015, at 11:53, Artem Zhirkov <[email protected]> wrote: >> >> Hello, >> >> I want to include more than one service into a bundle, so it seems like I >> have to make a use of declarative services. >> >> I'm building a test bundle with maven + maven-bundle-plugin and generating >> the ds descriptor with maven-scr-plugin, so it looks like this: >> >> <?xml version="1.0" encoding="UTF-8"?><components >> xmlns:scr="http://www.osgi.org/xmlns/scr/v1.0.0"> >> <scr:component name="ru.multicabinet.gateway.ExampleDS"> >> <implementation class="ru.multicabinet.gateway.ExampleDS"/> >> <service servicefactory="false"> >> <provide interface="ru.multicabinet.gateway.SimpleI"/> >> </service> >> <property name="service.pid" >> value="ru.multicabinet.gateway.ExampleDS"/> >> </scr:component> >> </components> >> >> After installing the test bundle into my osgi container I'm trying to get a >> list of all services in the test bundle by calling >> bundle.getRegisteredServices(), but it'd always return null. >> >> What I'm doing wrong? Maybe I should use ServiceTracker to obtain a >> reference to ds service? >> >> Thanks >> >> >> --------------------------------------------------------------------- >> To unsubscribe, e-mail: [email protected] >> For additional commands, e-mail: [email protected] >> > --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]

