[
https://issues.apache.org/jira/browse/FELIX-2923?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13794271#comment-13794271
]
David Humeniuk edited comment on FELIX-2923 at 10/14/13 5:03 PM:
-----------------------------------------------------------------
I still get the same error with the latest framework release (4.2.1). I guess
the question is then how do I register a service as the result of another
service being made available using Declarative Services? Or can you not use DS
in this case?
Or more of the issue how can I get a service component to register services if
I can't do that inside an activation method?
was (Author: kmart216):
I still get the same error with the latest framework release (4.2.1). I guess
the question is then how do I register a service as the result of another
service being made available using Declarative Services? Or can you not use DS
in this case?
> Get a ServiceFactory.getService() resulted in a cycle message when
> registering a service inside a DS activation method
> -----------------------------------------------------------------------------------------------------------------------
>
> Key: FELIX-2923
> URL: https://issues.apache.org/jira/browse/FELIX-2923
> Project: Felix
> Issue Type: Bug
> Components: Declarative Services (SCR)
> Affects Versions: scr-1.6.0
> Reporter: David Humeniuk
>
> I've run into an issue with Felix SCR where I get the message:
> ServiceFactory.getService() resulted in a cycle
> The reason this appers to be occuring is because within an activation method
> of a service component, call it ServiceAImpl (which provides ServiceA), the
> component registers another service, call it ServiceB.
> I have another service component, call it ServiceCImpl, which depends on both
> ServiceA and ServiceB. When ServiceAImpl registers ServiceB, ServiceCImpl is
> attemted to be activated within the call to activate ServiceAImpl. As part
> of the activation, the ServiceCImpl binding methods are called (at least
> attempted). When the binding method for ServiceA is attempted, the cycle is
> detected and the component fails to initialize.
> I guess what doesn't make sense is why the SCR will activate ServiceCImpl
> within the activation method of ServiceAImpl. I wouldn't think that
> ServiceCImpl would be considered satisfied until after the activation method
> has exited. Perhaps this is an issue of using declarative services while
> still registering services directly with the framework?
--
This message was sent by Atlassian JIRA
(v6.1#6144)