Facing an issue here. I have a component registering service as such:
    @Reference(
            cardinality=ReferenceCardinality.MULTIPLE,
            policy=ReferencePolicy.DYNAMIC,
            scope=PROTOTYPE_REQUIRED,
            target=ZKRenderer.CONFIG_TARGET
    )
    private void addRenderer(ComponentServiceObjects<ZKRenderer<?>>
factory, Map<String,Object> props) { ...}

where target is: "(|(iris.zkRenderer.dynamicTester=*)
(iris.zkRenderer.staticTester.element=*))"
to capture only instances that have at least one of those properties.

I also have other component that defines services under a subinterface of
ZKRenderer, but they don't match the filter.

But when they get instantiated via componentServiceObject.getService(); it
leads to:
!MESSAGE Circular reference detected trying to get service
{com.castortech.iris.ecp.view.spi.core.zk.ZKRendererFactory}={service.id=502,
service.bundleid=418, service.scope=bundle,
component.name=com.castortech.iris.ecp.view.internal.zk.ZKRendererFactoryImpl,
iris.zkRenderer.debug=false, component.id=1066}
 stack of references:
ServiceReference: (5 or 6 of those)

debugging I'm finding that it goes through the DependencyManager and seems
to want to register the service against the above service reference. I
thought that it was due to the fact that this was a subinterface and added
the filter, but it doesn't seem to change anything and I'm getting at a
lost to figure this one out.

Thanks
Alain
_______________________________________________
OSGi Developer Mail List
osgi-dev@mail.osgi.org
https://mail.osgi.org/mailman/listinfo/osgi-dev

Reply via email to