On 1/11/12 12:04 , Neil Bartlett wrote:
Guillaume,
In this case the bundle will be fully started, i.e. "forced" to start without
regard for its policy. Because of this I recommend that you *always* start bundles with
the START_ACTIVATION_POLICY flag.
I believe that it was discussed that the default behaviour of the zero-arg
start() method should be changed to be equivalent to
start(START_ACTIVATION_POLICY). However the old behaviour was kept for
backwards compatibility reasons.
Not sure I agree with this. It is never wrong to start a bundle eagerly,
but it can lead to unexpected results if a bundle that provides a
service is started lazily...of course, you could argue that this bundle
shouldn't have a lazy policy, but that is a separate issue. My first
point remains, it is never incorrect to start a bundle eagerly.
In general, laziness is actually not that great since it hides
dependencies in class loads, rather than basing them on services.
-> richard
Regards,
Neil
On Wednesday, 11 January 2012 at 16:55, Guillaume Sauthier (OW2) wrote:
Another question related to the activation policy.
What happen if the Bundle's manifest has the Bundle-ActivationPolicy header but
the Bundle.start() methods is called without arguments (no options so no
START_TRANSIENT and no START_LAZY_ACTIVATION) ?
--G
2012/1/11 Guillaume Sauthier (OW2)<[email protected]
(mailto:[email protected])>
With Felix, we experienced that the Bundle triggering the class load can use
the class loaded from the lazy Bundle, but the lazy Bundle was not activated
after the class was loaded...
--G
2012/1/11 Guillaume Sauthier (OW2)<[email protected]
(mailto:[email protected])>
Hi all
What happen when a Bundle with Bundle-ActivationPolicy: lazy in its Manifest is
being used while in the RESOLVED state ?
In other words, the Bundle has not yet been started with
Bundle.start(START_LAZY_ACTIVATION), but another Bundle is being activated and
is using a class from the lazy Bundle.
The examples I found on the OSGi web site are only explaining behaviors when
the lazy bundle is activated because of a Bundle.loadClass() while in STARTING
state.
Thanks
--G
_______________________________________________
OSGi Developer Mail List
[email protected] (mailto:[email protected])
https://mail.osgi.org/mailman/listinfo/osgi-dev
_______________________________________________
OSGi Developer Mail List
[email protected]
https://mail.osgi.org/mailman/listinfo/osgi-dev
_______________________________________________
OSGi Developer Mail List
[email protected]
https://mail.osgi.org/mailman/listinfo/osgi-dev