Hello Guys,

I have an Equinox OSGi application using Declarative Services with 3
plugins:
-a service interface plugin
-a service provider component
-a service consumer component (cardinality: 0..n, policy: dynamic)

Framework is launched.
id State Bundle
0 ACTIVE org.eclipse.osgi_3.8.0.v20110908-1857
3 ACTIVE osgi.example.service.consumer_1.0.0.qualifier
4 ACTIVE org.eclipse.osgi.services_3.3.0.v20110711-1243
5 ACTIVE org.eclipse.equinox.util_1.0.300.v20110502
6 ACTIVE org.eclipse.equinox.ds_1.3.100.v20110705
10 ACTIVE osgi.example.service_interface_1.0.0.qualifier
11 ACTIVE osgi.example.service.implementation_1.0.0.qualifier

In case the application is launched, the service consumer is triggered.

But in case the service provider is installed and started only after the
application has launched, SCR fails to load service implementation class.
See exception stack below!

What is the problem with this runtime/post-application deployment of the
service component?

Please note:
With Apache Felix and SCR, there is no problem with the runtime deployment
at all.

Many thanks, Csaba.

Framework is launched.
id State Bundle
0 ACTIVE org.eclipse.osgi_3.8.0.v20110908-1857
3 ACTIVE osgi.example.service.consumer_1.0.0.qualifier
4 ACTIVE org.eclipse.osgi.services_3.3.0.v20110711-1243
5 ACTIVE org.eclipse.equinox.util_1.0.300.v20110502
6 ACTIVE org.eclipse.equinox.ds_1.3.100.v20110705
10 ACTIVE osgi.example.service_interface_1.0.0.qualifier

osgi> install
file:/home/csaba/eclipse_distros/Indigo/workspace/osgi.example.service.implementation
Bundle id is 11.

id State Bundle
11 INSTALLED osgi.example.service.implementation_1.0.0.qualifier

osgi> start 11

Here SCR throws an exception:


!SESSION 2012-02-06 21:01:12.378
-----------------------------------------------
eclipse.buildId=unknown
java.version=1.6.0_20
java.vendor=Sun Microsystems Inc.
BootLoader constants: OS=linux, ARCH=x86, WS=gtk, NL=en_US
Command-line arguments: -dev
file:/home/csaba/eclipse_distros/Indigo/workspace/.metadata/.plugins/org.eclipse.pde.core/New_configuration
(1)/dev.properties -os linux -ws gtk -arch x86 -consoleLog -console
-consolelog

!ENTRY org.eclipse.equinox.ds 4 0 2012-02-06 21:03:11.214
!MESSAGE Exception occurred while creating new instance of component
Component[
name = osgi.example.service.implementation
activate = activate
deactivate = deactivate
modified =
configuration-policy = optional
factory = null
autoenable = true
immediate = false
implementation = osgi.example.service.implementation.ServiceImpl
state = Unsatisfied
properties =
serviceFactory = false
serviceInterface = [osgi.example.service_interface.Service]
references = null
located in bundle = osgi.example.service.implementation_1.0.0.qualifier [13]
]
!STACK 0
java.lang.ClassNotFoundException:
osgi.example.service.implementation.ServiceImpl
at
org.eclipse.osgi.internal.loader.BundleLoader.findClassInternal(BundleLoader.java:513)
at
org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:429)
at
org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:417)
at
org.eclipse.osgi.internal.baseadaptor.DefaultClassLoader.loadClass(DefaultClassLoader.java:107)
at java.lang.ClassLoader.loadClass(ClassLoader.java:266)
at
org.eclipse.osgi.internal.loader.BundleLoader.loadClass(BundleLoader.java:345)
at
org.eclipse.osgi.framework.internal.core.BundleHost.loadClass(BundleHost.java:229)
at
org.eclipse.osgi.framework.internal.core.AbstractBundle.loadClass(AbstractBundle.java:1208)
at
org.eclipse.equinox.internal.ds.model.ServiceComponent.createInstance(ServiceComponent.java:480)
at
org.eclipse.equinox.internal.ds.model.ServiceComponentProp.createInstance(ServiceComponentProp.java:271)
at
org.eclipse.equinox.internal.ds.model.ServiceComponentProp.build(ServiceComponentProp.java:332)
at
org.eclipse.equinox.internal.ds.InstanceProcess.buildComponent(InstanceProcess.java:588)
at org.eclipse.equinox.internal.ds.ServiceReg.getService(ServiceReg.java:53)
at
org.eclipse.osgi.internal.serviceregistry.ServiceUse$1.run(ServiceUse.java:141)
at java.security.AccessController.doPrivileged(Native Method)
at
org.eclipse.osgi.internal.serviceregistry.ServiceUse.getService(ServiceUse.java:139)
at
org.eclipse.osgi.internal.serviceregistry.ServiceRegistrationImpl.getService(ServiceRegistrationImpl.java:468)
at
org.eclipse.osgi.internal.serviceregistry.ServiceRegistry.getService(ServiceRegistry.java:467)
at
org.eclipse.osgi.framework.internal.core.BundleContextImpl.getService(BundleContextImpl.java:594)
at
org.eclipse.equinox.internal.ds.InstanceProcess.getService(InstanceProcess.java:686)
at
org.eclipse.equinox.internal.ds.model.ComponentReference.getMethod(ComponentReference.java:111)
at
org.eclipse.equinox.internal.ds.model.ComponentReference.bind(ComponentReference.java:322)
at
org.eclipse.equinox.internal.ds.model.ServiceComponentProp.bindReference(ServiceComponentProp.java:441)
at
org.eclipse.equinox.internal.ds.InstanceProcess.dynamicBind(InstanceProcess.java:415)
at org.eclipse.equinox.internal.ds.Resolver.getEligible(Resolver.java:319)
at
org.eclipse.equinox.internal.ds.SCRManager.serviceChanged(SCRManager.java:221)
at
org.eclipse.osgi.internal.serviceregistry.FilteredServiceListener.serviceChanged(FilteredServiceListener.java:104)
at
org.eclipse.osgi.framework.internal.core.BundleContextImpl.dispatchEvent(BundleContextImpl.java:861)
at
org.eclipse.osgi.framework.eventmgr.EventManager.dispatchEvent(EventManager.java:230)
at
org.eclipse.osgi.framework.eventmgr.ListenerQueue.dispatchEventSynchronous(ListenerQueue.java:148)
at
org.eclipse.osgi.internal.serviceregistry.ServiceRegistry.publishServiceEventPrivileged(ServiceRegistry.java:819)
at
org.eclipse.osgi.internal.serviceregistry.ServiceRegistry.publishServiceEvent(ServiceRegistry.java:771)
at
org.eclipse.osgi.internal.serviceregistry.ServiceRegistrationImpl.register(ServiceRegistrationImpl.java:130)
at
org.eclipse.osgi.internal.serviceregistry.ServiceRegistry.registerService(ServiceRegistry.java:214)
at
org.eclipse.osgi.framework.internal.core.BundleContextImpl.registerService(BundleContextImpl.java:433)
at
org.eclipse.equinox.internal.ds.InstanceProcess.registerService(InstanceProcess.java:504)
at
org.eclipse.equinox.internal.ds.InstanceProcess.buildComponents(InstanceProcess.java:259)
at
org.eclipse.equinox.internal.ds.Resolver.buildNewlySatisfied(Resolver.java:441)
at
org.eclipse.equinox.internal.ds.Resolver.enableComponents(Resolver.java:213)
at
org.eclipse.equinox.internal.ds.SCRManager.performWork(SCRManager.java:800)
at
org.eclipse.equinox.internal.ds.SCRManager$QueuedJob.dispatch(SCRManager.java:767)
at org.eclipse.equinox.internal.ds.WorkThread.run(WorkThread.java:89)
at
org.eclipse.equinox.internal.util.impl.tpt.threadpool.Executor.run(Executor.java:70)

!ENTRY org.eclipse.equinox.ds 4 0 2012-02-06 21:03:11.216
!MESSAGE Exception occurred while creating new instance of component
Component[
name = osgi.example.service.implementation
activate = activate
deactivate = deactivate
modified =
configuration-policy = optional
factory = null
autoenable = true
immediate = false
implementation = osgi.example.service.implementation.ServiceImpl
state = Unsatisfied
properties =
serviceFactory = false
serviceInterface = [osgi.example.service_interface.Service]
references = null
located in bundle = osgi.example.service.implementation_1.0.0.qualifier [13]
]
!STACK 0
java.lang.ClassNotFoundException:
osgi.example.service.implementation.ServiceImpl
at
org.eclipse.osgi.internal.loader.BundleLoader.findClassInternal(BundleLoader.java:513)
at
org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:429)
at
org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:417)
at
org.eclipse.osgi.internal.baseadaptor.DefaultClassLoader.loadClass(DefaultClassLoader.java:107)
at java.lang.ClassLoader.loadClass(ClassLoader.java:266)
at
org.eclipse.osgi.internal.loader.BundleLoader.loadClass(BundleLoader.java:345)
at
org.eclipse.osgi.framework.internal.core.BundleHost.loadClass(BundleHost.java:229)
at
org.eclipse.osgi.framework.internal.core.AbstractBundle.loadClass(AbstractBundle.java:1208)
at
org.eclipse.equinox.internal.ds.model.ServiceComponent.createInstance(ServiceComponent.java:480)
at
org.eclipse.equinox.internal.ds.model.ServiceComponentProp.createInstance(ServiceComponentProp.java:271)
at
org.eclipse.equinox.internal.ds.model.ServiceComponentProp.build(ServiceComponentProp.java:332)
at
org.eclipse.equinox.internal.ds.InstanceProcess.buildComponent(InstanceProcess.java:588)
at org.eclipse.equinox.internal.ds.ServiceReg.getService(ServiceReg.java:53)
at
org.eclipse.osgi.internal.serviceregistry.ServiceUse$1.run(ServiceUse.java:141)
at java.security.AccessController.doPrivileged(Native Method)
at
org.eclipse.osgi.internal.serviceregistry.ServiceUse.getService(ServiceUse.java:139)
at
org.eclipse.osgi.internal.serviceregistry.ServiceRegistrationImpl.getService(ServiceRegistrationImpl.java:468)
at
org.eclipse.osgi.internal.serviceregistry.ServiceRegistry.getService(ServiceRegistry.java:467)
at
org.eclipse.osgi.framework.internal.core.BundleContextImpl.getService(BundleContextImpl.java:594)
at
org.eclipse.equinox.internal.ds.InstanceProcess.getService(InstanceProcess.java:686)
at
org.eclipse.equinox.internal.ds.model.ComponentReference.getMethod(ComponentReference.java:111)
at
org.eclipse.equinox.internal.ds.model.ComponentReference.bind(ComponentReference.java:322)
at
org.eclipse.equinox.internal.ds.model.ServiceComponentProp.bindReference(ServiceComponentProp.java:441)
at
org.eclipse.equinox.internal.ds.InstanceProcess.dynamicBind(InstanceProcess.java:415)
at org.eclipse.equinox.internal.ds.Resolver.getEligible(Resolver.java:319)
at
org.eclipse.equinox.internal.ds.SCRManager.serviceChanged(SCRManager.java:221)
at
org.eclipse.osgi.internal.serviceregistry.FilteredServiceListener.serviceChanged(FilteredServiceListener.java:104)
at
org.eclipse.osgi.framework.internal.core.BundleContextImpl.dispatchEvent(BundleContextImpl.java:861)
at
org.eclipse.osgi.framework.eventmgr.EventManager.dispatchEvent(EventManager.java:230)
at
org.eclipse.osgi.framework.eventmgr.ListenerQueue.dispatchEventSynchronous(ListenerQueue.java:148)
at
org.eclipse.osgi.internal.serviceregistry.ServiceRegistry.publishServiceEventPrivileged(ServiceRegistry.java:819)
at
org.eclipse.osgi.internal.serviceregistry.ServiceRegistry.publishServiceEvent(ServiceRegistry.java:771)
at
org.eclipse.osgi.internal.serviceregistry.ServiceRegistrationImpl.register(ServiceRegistrationImpl.java:130)
at
org.eclipse.osgi.internal.serviceregistry.ServiceRegistry.registerService(ServiceRegistry.java:214)
at
org.eclipse.osgi.framework.internal.core.BundleContextImpl.registerService(BundleContextImpl.java:433)
at
org.eclipse.equinox.internal.ds.InstanceProcess.registerService(InstanceProcess.java:504)
at
org.eclipse.equinox.internal.ds.InstanceProcess.buildComponents(InstanceProcess.java:259)
at
org.eclipse.equinox.internal.ds.Resolver.buildNewlySatisfied(Resolver.java:441)
at
org.eclipse.equinox.internal.ds.Resolver.enableComponents(Resolver.java:213)
at
org.eclipse.equinox.internal.ds.SCRManager.performWork(SCRManager.java:800)
at
org.eclipse.equinox.internal.ds.SCRManager$QueuedJob.dispatch(SCRManager.java:767)
at org.eclipse.equinox.internal.ds.WorkThread.run(WorkThread.java:89)
at
org.eclipse.equinox.internal.util.impl.tpt.threadpool.Executor.run(Executor.java:70)

!ENTRY org.eclipse.osgi 4 0 2012-02-06 21:03:11.220
!MESSAGE An unexpected runtime error has occurred.
!STACK 0
org.osgi.service.component.ComponentException: Exception occurred while
creating new instance of component Component[
name = osgi.example.service.implementation
activate = activate
deactivate = deactivate
modified =
configuration-policy = optional
factory = null
autoenable = true
immediate = false
implementation = osgi.example.service.implementation.ServiceImpl
state = Unsatisfied
properties =
serviceFactory = false
serviceInterface = [osgi.example.service_interface.Service]
references = null
located in bundle = osgi.example.service.implementation_1.0.0.qualifier [13]
]
at
org.eclipse.equinox.internal.ds.model.ServiceComponent.createInstance(ServiceComponent.java:482)
at
org.eclipse.equinox.internal.ds.model.ServiceComponentProp.createInstance(ServiceComponentProp.java:271)
at
org.eclipse.equinox.internal.ds.model.ServiceComponentProp.build(ServiceComponentProp.java:332)
at
org.eclipse.equinox.internal.ds.InstanceProcess.buildComponent(InstanceProcess.java:588)
at org.eclipse.equinox.internal.ds.ServiceReg.getService(ServiceReg.java:53)
at
org.eclipse.osgi.internal.serviceregistry.ServiceUse$1.run(ServiceUse.java:141)
at java.security.AccessController.doPrivileged(Native Method)
at
org.eclipse.osgi.internal.serviceregistry.ServiceUse.getService(ServiceUse.java:139)
at
org.eclipse.osgi.internal.serviceregistry.ServiceRegistrationImpl.getService(ServiceRegistrationImpl.java:468)
at
org.eclipse.osgi.internal.serviceregistry.ServiceRegistry.getService(ServiceRegistry.java:467)
at
org.eclipse.osgi.framework.internal.core.BundleContextImpl.getService(BundleContextImpl.java:594)
at
org.eclipse.equinox.internal.ds.InstanceProcess.getService(InstanceProcess.java:686)
at
org.eclipse.equinox.internal.ds.model.ComponentReference.getMethod(ComponentReference.java:111)
at
org.eclipse.equinox.internal.ds.model.ComponentReference.bind(ComponentReference.java:322)
at
org.eclipse.equinox.internal.ds.model.ServiceComponentProp.bindReference(ServiceComponentProp.java:441)
at
org.eclipse.equinox.internal.ds.InstanceProcess.dynamicBind(InstanceProcess.java:415)
at org.eclipse.equinox.internal.ds.Resolver.getEligible(Resolver.java:319)
at
org.eclipse.equinox.internal.ds.SCRManager.serviceChanged(SCRManager.java:221)
at
org.eclipse.osgi.internal.serviceregistry.FilteredServiceListener.serviceChanged(FilteredServiceListener.java:104)
at
org.eclipse.osgi.framework.internal.core.BundleContextImpl.dispatchEvent(BundleContextImpl.java:861)
at
org.eclipse.osgi.framework.eventmgr.EventManager.dispatchEvent(EventManager.java:230)
at
org.eclipse.osgi.framework.eventmgr.ListenerQueue.dispatchEventSynchronous(ListenerQueue.java:148)
at
org.eclipse.osgi.internal.serviceregistry.ServiceRegistry.publishServiceEventPrivileged(ServiceRegistry.java:819)
at
org.eclipse.osgi.internal.serviceregistry.ServiceRegistry.publishServiceEvent(ServiceRegistry.java:771)
at
org.eclipse.osgi.internal.serviceregistry.ServiceRegistrationImpl.register(ServiceRegistrationImpl.java:130)
at
org.eclipse.osgi.internal.serviceregistry.ServiceRegistry.registerService(ServiceRegistry.java:214)
at
org.eclipse.osgi.framework.internal.core.BundleContextImpl.registerService(BundleContextImpl.java:433)
at
org.eclipse.equinox.internal.ds.InstanceProcess.registerService(InstanceProcess.java:504)
at
org.eclipse.equinox.internal.ds.InstanceProcess.buildComponents(InstanceProcess.java:259)
at
org.eclipse.equinox.internal.ds.Resolver.buildNewlySatisfied(Resolver.java:441)
at
org.eclipse.equinox.internal.ds.Resolver.enableComponents(Resolver.java:213)
at
org.eclipse.equinox.internal.ds.SCRManager.performWork(SCRManager.java:800)
at
org.eclipse.equinox.internal.ds.SCRManager$QueuedJob.dispatch(SCRManager.java:767)
at org.eclipse.equinox.internal.ds.WorkThread.run(WorkThread.java:89)
at
org.eclipse.equinox.internal.util.impl.tpt.threadpool.Executor.run(Executor.java:70)
Caused by: java.lang.ClassNotFoundException:
osgi.example.service.implementation.ServiceImpl
at
org.eclipse.osgi.internal.loader.BundleLoader.findClassInternal(BundleLoader.java:513)
at
org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:429)
at
org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:417)
at
org.eclipse.osgi.internal.baseadaptor.DefaultClassLoader.loadClass(DefaultClassLoader.java:107)
at java.lang.ClassLoader.loadClass(ClassLoader.java:266)
at
org.eclipse.osgi.internal.loader.BundleLoader.loadClass(BundleLoader.java:345)
at
org.eclipse.osgi.framework.internal.core.BundleHost.loadClass(BundleHost.java:229)
at
org.eclipse.osgi.framework.internal.core.AbstractBundle.loadClass(AbstractBundle.java:1208)
at
org.eclipse.equinox.internal.ds.model.ServiceComponent.createInstance(ServiceComponent.java:480)
... 34 more

!ENTRY osgi.example.service.implementation 4 0 2012-02-06 21:03:11.223
!MESSAGE FrameworkEvent ERROR
!STACK 0
org.osgi.framework.ServiceException: Exception in
org.eclipse.equinox.internal.ds.ServiceReg.getService()
at
org.eclipse.osgi.internal.serviceregistry.ServiceUse.getService(ServiceUse.java:151)
at
org.eclipse.osgi.internal.serviceregistry.ServiceRegistrationImpl.getService(ServiceRegistrationImpl.java:468)
at
org.eclipse.osgi.internal.serviceregistry.ServiceRegistry.getService(ServiceRegistry.java:467)
at
org.eclipse.osgi.framework.internal.core.BundleContextImpl.getService(BundleContextImpl.java:594)
at
org.eclipse.equinox.internal.ds.InstanceProcess.getService(InstanceProcess.java:686)
at
org.eclipse.equinox.internal.ds.model.ComponentReference.getMethod(ComponentReference.java:111)
at
org.eclipse.equinox.internal.ds.model.ComponentReference.bind(ComponentReference.java:322)
at
org.eclipse.equinox.internal.ds.model.ServiceComponentProp.bindReference(ServiceComponentProp.java:441)
at
org.eclipse.equinox.internal.ds.InstanceProcess.dynamicBind(InstanceProcess.java:415)
at org.eclipse.equinox.internal.ds.Resolver.getEligible(Resolver.java:319)
at
org.eclipse.equinox.internal.ds.SCRManager.serviceChanged(SCRManager.java:221)
at
org.eclipse.osgi.internal.serviceregistry.FilteredServiceListener.serviceChanged(FilteredServiceListener.java:104)
at
org.eclipse.osgi.framework.internal.core.BundleContextImpl.dispatchEvent(BundleContextImpl.java:861)
at
org.eclipse.osgi.framework.eventmgr.EventManager.dispatchEvent(EventManager.java:230)
at
org.eclipse.osgi.framework.eventmgr.ListenerQueue.dispatchEventSynchronous(ListenerQueue.java:148)
at
org.eclipse.osgi.internal.serviceregistry.ServiceRegistry.publishServiceEventPrivileged(ServiceRegistry.java:819)
at
org.eclipse.osgi.internal.serviceregistry.ServiceRegistry.publishServiceEvent(ServiceRegistry.java:771)
at
org.eclipse.osgi.internal.serviceregistry.ServiceRegistrationImpl.register(ServiceRegistrationImpl.java:130)
at
org.eclipse.osgi.internal.serviceregistry.ServiceRegistry.registerService(ServiceRegistry.java:214)
at
org.eclipse.osgi.framework.internal.core.BundleContextImpl.registerService(BundleContextImpl.java:433)
at
org.eclipse.equinox.internal.ds.InstanceProcess.registerService(InstanceProcess.java:504)
at
org.eclipse.equinox.internal.ds.InstanceProcess.buildComponents(InstanceProcess.java:259)
at
org.eclipse.equinox.internal.ds.Resolver.buildNewlySatisfied(Resolver.java:441)
at
org.eclipse.equinox.internal.ds.Resolver.enableComponents(Resolver.java:213)
at
org.eclipse.equinox.internal.ds.SCRManager.performWork(SCRManager.java:800)
at
org.eclipse.equinox.internal.ds.SCRManager$QueuedJob.dispatch(SCRManager.java:767)
at org.eclipse.equinox.internal.ds.WorkThread.run(WorkThread.java:89)
at
org.eclipse.equinox.internal.util.impl.tpt.threadpool.Executor.run(Executor.java:70)
Caused by: org.osgi.service.component.ComponentException: Exception
occurred while creating new instance of component Component[
name = osgi.example.service.implementation
activate = activate
deactivate = deactivate
modified =
configuration-policy = optional
factory = null
autoenable = true
immediate = false
implementation = osgi.example.service.implementation.ServiceImpl
state = Unsatisfied
properties =
serviceFactory = false
serviceInterface = [osgi.example.service_interface.Service]
references = null
located in bundle = osgi.example.service.implementation_1.0.0.qualifier [13]
]
at
org.eclipse.equinox.internal.ds.model.ServiceComponent.createInstance(ServiceComponent.java:482)
at
org.eclipse.equinox.internal.ds.model.ServiceComponentProp.createInstance(ServiceComponentProp.java:271)
at
org.eclipse.equinox.internal.ds.model.ServiceComponentProp.build(ServiceComponentProp.java:332)
at
org.eclipse.equinox.internal.ds.InstanceProcess.buildComponent(InstanceProcess.java:588)
at org.eclipse.equinox.internal.ds.ServiceReg.getService(ServiceReg.java:53)
at
org.eclipse.osgi.internal.serviceregistry.ServiceUse$1.run(ServiceUse.java:141)
at java.security.AccessController.doPrivileged(Native Method)
at
org.eclipse.osgi.internal.serviceregistry.ServiceUse.getService(ServiceUse.java:139)
... 27 more
Caused by: java.lang.ClassNotFoundException:
osgi.example.service.implementation.ServiceImpl
at
org.eclipse.osgi.internal.loader.BundleLoader.findClassInternal(BundleLoader.java:513)
at
org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:429)
at
org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:417)
at
org.eclipse.osgi.internal.baseadaptor.DefaultClassLoader.loadClass(DefaultClassLoader.java:107)
at java.lang.ClassLoader.loadClass(ClassLoader.java:266)
at
org.eclipse.osgi.internal.loader.BundleLoader.loadClass(BundleLoader.java:345)
at
org.eclipse.osgi.framework.internal.core.BundleHost.loadClass(BundleHost.java:229)
at
org.eclipse.osgi.framework.internal.core.AbstractBundle.loadClass(AbstractBundle.java:1208)
at
org.eclipse.equinox.internal.ds.model.ServiceComponent.createInstance(ServiceComponent.java:480)
... 34 more

!ENTRY osgi.example.service.consumer 2 0 2012-02-06 21:03:11.228
!MESSAGE [SCR] Could not get the service object relevant to the reference.
One possible reason is a circularity problem. Another possible reason is
that BundleContext.getService() returns null.
Details:
Problematic reference = Reference[name = Service, interface =
osgi.example.service_interface.Service, policy = dynamic, cardinality =
0..n, target = null, bind = setService, unbind = unsetService]
of service component = osgi.example.service.consumer
component implementation class =
osgi.example.service.consumer.ServiceConsumer
located in bundle with symbolic name = osgi.example.service.consumer
bundle location = initial@reference
:file:../../../../osgi.example.service.consumer/

!ENTRY osgi.example.service.consumer 2 0 2012-02-06 21:03:11.229
!MESSAGE [SCR] ComponentReference.bind(): bind method 'setService' is not
found or it is not accessible!
Details:
Problematic reference = Reference[name = Service, interface =
osgi.example.service_interface.Service, policy = dynamic, cardinality =
0..n, target = null, bind = setService, unbind = unsetService]
of service component = osgi.example.service.consumer
component implementation class =
osgi.example.service.consumer.ServiceConsumer
located in bundle with symbolic name = osgi.example.service.consumer
bundle location = initial@reference
:file:../../../../osgi.example.service.consumer/
_______________________________________________
equinox-dev mailing list
[email protected]
https://dev.eclipse.org/mailman/listinfo/equinox-dev

Reply via email to