Hi All,

I met an issue as the following,

...
Caused by: org.osgi.framework.BundleException: Unable to acquire global
lock for resolve.
        at 
org.apache.felix.framework.Felix.resolveBundleRevision(Felix.java:3832)
        at org.apache.felix.framework.Felix.startBundle(Felix.java:1868)
        at org.apache.felix.framework.BundleImpl.start(BundleImpl.java:944)
...

Richard said the issue is not a bug[1] of felix, and I also agree with him.

However, I want to say once we truely met the issue and try to catch the
exception on upper layer, how can we do?

I think that best way should be: felix offered some api to let us
retrieve whether bundle lock has been released by other thread.

The second way can be: do a loop and wait for the changing of current
bundle state, and set a timeout to avoid infinite loop.

The third way should be: adjusting upper layer's bundles and decoupling
them to avoid the case...

Want to listen your ideas.

[1]:http://mail-archives.apache.org/mod_mbox/felix-users/201102.mbox/%[email protected]%3E

Thanks
Tang

-- 
−−−−−−−−−−−−−−−−−−−−−−
Tang Yong
Senior Engineer
GlassFish Committer (OSGi & OSGi-JavaEE)
OSGi Alliance Supporter
Blog: http://osgizone.typepad.com/tangyong/

Nanjing Fujitsu NanDa Software Tec CO.,LTD
http://www.fujitsu.com/cn/fnst
Tel: +86-25-86630566-8310
Fax: +86-25-83317685              
−−−−−−−−−−−−−−−−−−−−−−


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to