felix-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Richard S. Hall (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (FELIX-3477) NPE in BundleWiringImpl.searchImports
Date Mon, 20 Aug 2012 14:55:37 GMT

    [ https://issues.apache.org/jira/browse/FELIX-3477?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13437915#comment-13437915

Richard S. Hall commented on FELIX-3477:

After looking into Peter's scenario, it still seems to be the standard case of threads still
running and trying to load classes via a bundle wiring which was disposed. The NPE makes it
seem like it is an error in the framework, but technically it is not. Perhaps we should consider
throwing some other sort of exception if we detect this case.
> NPE in BundleWiringImpl.searchImports
> -------------------------------------
>                 Key: FELIX-3477
>                 URL: https://issues.apache.org/jira/browse/FELIX-3477
>             Project: Felix
>          Issue Type: Bug
>          Components: Framework
>    Affects Versions: framework-4.0.2
>         Environment: JDK 6u31, Ubuntu
>            Reporter: Jesse Glick
> NetBeans unit tests in the org.netbeans.core.osgi module pass but print a lot of stack
traces when run against Felix 4.0.2:
> Apr 23, 2012 7:06:57 PM org.openide.util.lookup.implspi.ActiveQueue$Daemon run
> WARNING: Cannot process org.openide.util.WeakListenerImpl$ListenerReference@1ce1bea
> java.lang.NullPointerException
> 	at org.apache.felix.framework.BundleWiringImpl.searchImports(BundleWiringImpl.java:1508)
> 	at org.apache.felix.framework.BundleWiringImpl.findClassOrResourceByDelegation(BundleWiringImpl.java:1427)
> 	at org.apache.felix.framework.BundleWiringImpl.access$400(BundleWiringImpl.java:72)
> 	at org.apache.felix.framework.BundleWiringImpl$BundleClassLoader.loadClass(BundleWiringImpl.java:1843)
> 	at java.lang.ClassLoader.loadClass(ClassLoader.java:247)
> 	at java.lang.Class.getDeclaredMethods0(Native Method)
> 	at java.lang.Class.privateGetDeclaredMethods(Class.java:2427)
> 	at java.lang.Class.getMethod0(Class.java:2670)
> 	at java.lang.Class.getMethod(Class.java:1603)
> 	at org.openide.util.WeakListenerImpl$ListenerReference.getRemoveMethod(WeakListenerImpl.java:614)
> 	at org.openide.util.WeakListenerImpl$ListenerReference.run(WeakListenerImpl.java:572)
> 	at org.openide.util.lookup.implspi.ActiveQueue$Daemon.run(ActiveQueue.java:185)
> (The ActiveQueue thread in this case is looking for listeners attached via weak references
which have since been collected, so that the stub listener can be cleanly detached from the
observable object. It is impossible to guarantee exactly when this cleanup will run.)
> Presumably BundleRevisionImpl.m_wiring is null. searchImports should I think just treat
this as if result==null. Can offer a patch if you like.

This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira


View raw message