Index: WeakListenerImpl.java =================================================================== RCS file: /cvs/openide/src/org/openide/util/WeakListenerImpl.java,v retrieving revision 1.9 diff -u -r1.9 WeakListenerImpl.java --- WeakListenerImpl.java 27 Feb 2004 15:43:56 -0000 1.9 +++ WeakListenerImpl.java 25 Mar 2004 12:13:54 -0000 @@ -344,7 +344,16 @@ constructors.put (c, new SoftReference (proxyConstructor)); } - proxy = proxyConstructor.newInstance(new Object[] { this }); + Object p; + try { + p = proxyConstructor.newInstance(new Object[] { this }); + } catch (java.lang.NoClassDefFoundError err) { + // if for some reason the actual creation of the instance + // from constructor fails, try it once more using regular + // method, see issue 30449 + p = Proxy.newProxyInstance (c.getClassLoader (), new Class[] { c }, this); + } + proxy = p; } catch (Exception ex) { IllegalStateException e = new IllegalStateException (ex.getMessage ()); ErrorManager.getDefault ().annotate (e, ex);