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

Reply via email to