Regarding the capabilities, both. It's determined by A) the bundles manifest entry. But in certain cases those bundles don't explicit describe their capabilities fully. In those cases it helps if the feature itself does describe that capability.
regards, Achim 2017-06-13 13:55 GMT+02:00 Stephen Kitt <[email protected]>: > Hi Jean-Baptiste, > > On Tue, 13 Jun 2017 10:41:26 +0200 > Jean-Baptiste Onofré <[email protected]> wrote: > > I think there's two questions: > > > > 1. Why does a refresh happen ? > > A refresh can happen for instance when an optional import is resolved > > (when installing a feature or a bundle) or when a new package version > > is installed matching a version range. > > So, especially in the case of optional import, you should check the > > import of your bundle. > > OK, thanks. > > > 2. Why does your bundle not able to refresh ? > > That's probably the most important. Maybe, you keep the bundle > > context as member of a class and so it becomes invalid after the > > refresh. > > That’s possible in some cases. Our main issue is that some of our > bundles maintain state and don’t really like being stopped and started > (in particular, our persistence bundles and our clustering bundles). > > > Before dealing with dependency or prerequisite, I would start to > > address those points. > > > > The dependency flag is not a "complete" inner feature, so it's normal > > that the feature is not installed if another one already provides the > > corresponding capabilities. > > OK. Are capabilities here determined by explicit <capability/> > declarations in the feature XML, or are they based on bundle manifest > declarations? > > Regards, > > Stephen > -- Apache Member Apache Karaf <http://karaf.apache.org/> Committer & PMC OPS4J Pax Web <http://wiki.ops4j.org/display/paxweb/Pax+Web/> Committer & Project Lead blog <http://notizblog.nierbeck.de/> Co-Author of Apache Karaf Cookbook <http://bit.ly/1ps9rkS> Software Architect / Project Manager / Scrum Master
