Hi,
this is only true for Spring-DM, the blueprint spec doesn't have this.
Take also a look at the spring dm documentation in section 7.2
There is a comparison of it.
http://static.springsource.org/osgi/docs/2.0.0.M1/reference/html-single/

regards, Achim

2012/1/10 Hervé BARRAULT <herve.barra...@gmail.com>

> Hi,
> By default, the Spring context is created asynchronously but spring?
> enables you to have a synchronous one.
>
> Example by adding in your Manifest:
> Spring-Context: *;create-asynchronously:=false;timeout:=30
>
> Context is created synchronously and the bundle will be active only if
> the spring context is successfully created in less than 30 seconds.
>
>
> It link the active state of the bundle to the spring context creation.
>
> I don't know if something similar exists for Blueprint.
>
> Regards
>
>
> On 1/5/12, Freeman Fang <freeman.f...@gmail.com> wrote:
> > Hi,
> >
> > Yeah, that's correct, the scenario you described here might happen(but
> > it works in most cases), this is actually from the OSGi asyn nature.
> > And business logic depend on bundle start sequence isn't good practice
> > in OSGi world.
> >
> > The only way I know can guarantee the bundle fully start sequence is
> > hold the OSGi service reference,  or use spring/blueprint event
> > listener in some cases also works, just like I mentioned in this thread.
> >
> >
> > Freeman
> >
> >
> >
> > On 2012-1-5, at 下午7:06, metatech wrote:
> >
> >>
> >> Freeman-2 wrote
> >>>
> >>> Or specify less start-level for bundle1, which means bundle1 get
> >>> started early than bundle2, you need write a feature descriptor where
> >>> you can specify start-level for each bundle.
> >>>
> >> Hi Freeman,
> >>
> >> I have a question regarding your second option.
> >>
> >> My understanding is that start-level only have an effect at the OSGi
> >> lifecycle ("Installed", "Resolved", "Active"), but not for the
> >> Spring/Blueprint lifecycle ("Started").
> >>
> >> The following scenario might happen :
> >> 1. Bundle1 is activated by the OSGi framework.
> >> 2. Bundle1 is started by Spring/Blueprint framework.
> >> 3. Bundle2 is activated by the OSGi framework.
> >> 4. Bundle2 is started by Spring/Blueprint framework.
> >>
> >> Start levels ensure that step 3 happens after step 1.
> >> Spring/Blueprint ensures that step 2 happens after step 1.
> >> Spring/Blueprint ensures that step 4 happens after step 3.
> >>
> >> Steps 2 and 3 can happen in parallel.
> >> Steps 2 and 4 can happen in parallel.
> >>
> >> In that case, bundle2 might be started before bundle1 is fully
> >> started :
> >> step 4 might be finished before step 2, especially if step 2 waits
> >> for other
> >> dependencies.
> >>
> >> Is my understanding correct ?
> >>
> >> Thanks,
> >>
> >> metatech
> >>
> >>
> >> --
> >> View this message in context:
> >>
> http://servicemix.396122.n5.nabble.com/Active-Bundle-Not-exactly-Active-tp5109090p5122383.html
> >> Sent from the ServiceMix - User mailing list archive at Nabble.com.
> >
> > ---------------------------------------------
> > Freeman Fang
> >
> > FuseSource
> > Email:ff...@fusesource.com
> > Web: fusesource.com
> > Twitter: freemanfang
> > Blog: http://freemanfang.blogspot.com
> >
> >
> >
> >
> >
> >
> >
> >
> >
> >
>



-- 

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/>

Reply via email to