[
https://issues.apache.org/jira/browse/FELIX-3361?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Guillaume Nodet closed FELIX-3361.
----------------------------------
Resolution: Won't Fix
I do understand what you say, but that's the first case I mentioned.
In my second case, the StartLevel#getStartLevel() > Bundle#getStartLevel() but
the start level thread is still running. So I think this situation is not
really in the use case mentioned in the spec (which is
StartLevel#getStartLevel() < Bundle#getStartLevel()).
Anyway, given fixing this won't really prevent my problem since the behavior is
different depending on the exact timing between StartLevel#setStartLevel() and
Bundle#start(), i'll just close the issue.
For reference, the problem has been captured by
http://team.ops4j.org/browse/PAXEXAM-356 and we have a working work around.
> Bundle#start does not comply with the spec
> ------------------------------------------
>
> Key: FELIX-3361
> URL: https://issues.apache.org/jira/browse/FELIX-3361
> Project: Felix
> Issue Type: Bug
> Affects Versions: framework-4.0.2
> Reporter: Guillaume Nodet
>
> The spec says: "When the start method returns without an exception, the
> state of the bundle will either be ACTIVE or STARTING, depending on the
> declared activation policy and whether it was used. If the start method
> throws an exception, then the bundle will not be in either of these states
> and the stop method will not be called for this Bundle Activator instance."
> However there is a case where this does not happen, which is when the start
> level thread is already running
> I think the Bundle#start should either activate the bundle or wait for the
> bundle to be activated before returning in order to comply with the spec.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators:
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira