[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
Re: [pde-dev] java.lang.RuntimeException Widget disposed too early! with an Eclipse plug-in for Lotus Notes8.5 sidebar

Looks like a workbench part is being disposed while it is being created. 
The workbench logs an error for this. I do not know why this is happening 
to you. See the code in WorkbenchPartReference:

// Add a dispose listener to the part. This dispose listener does nothing 
but log an exception
// if the part's widgets get disposed unexpectedly. The workbench part 
reference is the only
// object that should dispose this control, and it will remove the 
listener before it does so.
getPane().getControl().addDisposeListener(prematureDisposeListener);

This is platform UI code. Perhaps you could post this question on a 
newsgroup, or set a breakpoint in the dispose listener to see who is 
disposing the control.

Darin 



"Kevin Groulus" <K.Groulus@xxxxxxx> 
Sent by: pde-dev-bounces@xxxxxxxxxxx
03/09/2009 04:59 AM
Please respond to
"Eclipse PDE general developers list." <pde-dev@xxxxxxxxxxx>


To
pde-dev@xxxxxxxxxxx
cc

Subject
[pde-dev] java.lang.RuntimeException Widget disposed too early! with an 
Eclipse plug-in for Lotus Notes8.5 sidebar






Hello, 
I'm currently trying to develop an Eclipse plug-in for Lotus Notes 8.5.
I launch my tests from Eclipse via a Notes Launch Configuration.

In my first tests, I could connect to a Domino Database with that piece of 
code without any problem :
        Session s;
                try{
                NotesThread.sinitThread();
                s=NotesFactory.createSession();
            nab = s.getDatabase("", 
s.getAddressBooks().elementAt(0).toString());
                 if(nab.isOpen()==false)
                     nab.open();
                 return nab;}
                catch(NotesException e){e.printStackTrace();
                return null;
                }
          ....
          ....
           NotesThread.stermThread();

But after some modifications (not to that code) I receive a 
"Java.lang.RuntimeException Widget disposed too early"  Error at the 
launch and the program exits.
Does someone know how to fix it? Or what I need to avoid? or what is the 
cause of this problem?

Thanks a lot, 
KG



Here is the stacktrace :

Starting application: 9563
2009/03/09 10:54:52.309 FINE RcpD daemon is running ... 
::class.method=com.ibm.rcp.core.internal.daemon.Logging.fine() 
::thread=RcpD Command Processor 
::loggername=com.ibm.rcp.core.internal.daemon
2009/03/09 10:54:52.325 FINE Adding greedy listener with id advisorCommand 
::class.method=com.ibm.rcp.core.internal.daemon.Logging.finest() 
::thread=RcpD Command Processor 
::loggername=com.ibm.rcp.core.internal.daemon
2009/03/09 10:54:52.325 FINE Adding greedy listener with id 
provisioningCommand 
::class.method=com.ibm.rcp.core.internal.daemon.Logging.finest() 
::thread=RcpD Command Processor 
::loggername=com.ibm.rcp.core.internal.daemon
2009/03/09 10:54:52.356 FINE RcpD.run(): waiting for a connection ... 
::class.method=com.ibm.rcp.core.internal.daemon.Logging.fine() 
::thread=RcpD Command Processor 
::loggername=com.ibm.rcp.core.internal.daemon
Application Started: 12969
Activator- start()
createPartControl()
2009/03/09 10:55:04.951 SEVERE Widget disposed too early! 
::class.method=unknown ::thread=main ::loggername=org.eclipse.ui.workbench

        java.lang.RuntimeException: Widget disposed too early!
        at 
org.eclipse.ui.internal.WorkbenchPartReference$1.widgetDisposed(WorkbenchPartReference.java:171)
        at 
org.eclipse.swt.widgets.TypedListener.handleEvent(TypedListener.java:117)
        at 
org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:84)
        at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1003)
        at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1027)
        at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1008)
        at org.eclipse.swt.widgets.Widget.release(Widget.java:804)
        at 
org.eclipse.swt.widgets.Composite.releaseChildren(Composite.java:755)
        at org.eclipse.swt.widgets.Widget.release(Widget.java:807)
        at 
org.eclipse.swt.widgets.Composite.releaseChildren(Composite.java:755)
        at org.eclipse.swt.widgets.Widget.release(Widget.java:807)
        at 
org.eclipse.swt.widgets.Composite.releaseChildren(Composite.java:755)
        at org.eclipse.swt.widgets.Widget.release(Widget.java:807)
        at 
org.eclipse.swt.widgets.Composite.releaseChildren(Composite.java:755)
        at org.eclipse.swt.widgets.Widget.release(Widget.java:807)
        at 
org.eclipse.swt.widgets.Composite.releaseChildren(Composite.java:755)
        at org.eclipse.swt.widgets.Canvas.releaseChildren(Canvas.java:174)
        at 
org.eclipse.swt.widgets.Decorations.releaseChildren(Decorations.java:771)
        at org.eclipse.swt.widgets.Shell.releaseChildren(Shell.java:1211)
        at org.eclipse.swt.widgets.Widget.release(Widget.java:807)
        at org.eclipse.swt.widgets.Widget.dispose(Widget.java:441)
        at 
org.eclipse.swt.widgets.Decorations.dispose(Decorations.java:446)
        at org.eclipse.swt.widgets.Shell.dispose(Shell.java:674)
        at org.eclipse.swt.widgets.Display.release(Display.java:3472)
        at org.eclipse.swt.graphics.Device.dispose(Device.java:261)
        at 
com.ibm.rcp.personality.framework.internal.RCPApplication.run(RCPApplication.java:79)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at 
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:59)
        at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:39)
        at java.lang.reflect.Method.invoke(Method.java:612)
        at 
org.eclipse.equinox.internal.app.EclipseAppContainer.callMethodWithException(EclipseAppContainer.java:574)
        at 
org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:195)
        at 
org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:110)
        at 
org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:79)
        at 
org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:387)
        at 
org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:180)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at 
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:59)
        at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:39)
        at java.lang.reflect.Method.invoke(Method.java:612)
        at 
org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:549)
        at org.eclipse.equinox.launcher.Main.basicRun(Main.java:504)
        at org.eclipse.equinox.launcher.Main.run(Main.java:1236)
        at org.eclipse.equinox.launcher.Main.main(Main.java:1212)
2009/03/09 10:55:04.982 SEVERE Widget disposed too early! 
::class.method=unknown ::thread=main ::loggername=org.eclipse.ui.workbench

        java.lang.RuntimeException: Widget disposed too early!
        at 
org.eclipse.ui.internal.WorkbenchPartReference$1.widgetDisposed(WorkbenchPartReference.java:171)
        at 
org.eclipse.swt.widgets.TypedListener.handleEvent(TypedListener.java:117)
        at 
org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:84)
        at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1003)
        at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1027)
        at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1008)
        at org.eclipse.swt.widgets.Widget.release(Widget.java:804)
        at 
org.eclipse.swt.widgets.Composite.releaseChildren(Composite.java:755)
        at org.eclipse.swt.widgets.Canvas.releaseChildren(Canvas.java:174)
        at org.eclipse.swt.widgets.Widget.release(Widget.java:807)
        at 
org.eclipse.swt.widgets.Composite.releaseChildren(Composite.java:755)
        at org.eclipse.swt.widgets.Widget.release(Widget.java:807)
        at 
org.eclipse.swt.widgets.Composite.releaseChildren(Composite.java:755)
        at org.eclipse.swt.widgets.Widget.release(Widget.java:807)
        at 
org.eclipse.swt.widgets.Composite.releaseChildren(Composite.java:755)
        at org.eclipse.swt.widgets.Canvas.releaseChildren(Canvas.java:174)
        at 
org.eclipse.swt.widgets.Decorations.releaseChildren(Decorations.java:771)
        at org.eclipse.swt.widgets.Shell.releaseChildren(Shell.java:1211)
        at org.eclipse.swt.widgets.Widget.release(Widget.java:807)
        at org.eclipse.swt.widgets.Widget.dispose(Widget.java:441)
        at 
org.eclipse.swt.widgets.Decorations.dispose(Decorations.java:446)
        at org.eclipse.swt.widgets.Shell.dispose(Shell.java:674)
        at org.eclipse.swt.widgets.Display.release(Display.java:3472)
        at org.eclipse.swt.graphics.Device.dispose(Device.java:261)
        at 
com.ibm.rcp.personality.framework.internal.RCPApplication.run(RCPApplication.java:79)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at 
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:59)
        at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:39)
        at java.lang.reflect.Method.invoke(Method.java:612)
        at 
org.eclipse.equinox.internal.app.EclipseAppContainer.callMethodWithException(EclipseAppContainer.java:574)
        at 
org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:195)
        at 
org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:110)
        at 
org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:79)
        at 
org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:387)
        at 
org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:180)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at 
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:59)
        at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:39)
        at java.lang.reflect.Method.invoke(Method.java:612)
        at 
org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:549)
        at org.eclipse.equinox.launcher.Main.basicRun(Main.java:504)
        at org.eclipse.equinox.launcher.Main.run(Main.java:1236)
        at org.eclipse.equinox.launcher.Main.main(Main.java:1212)
2009/03/09 10:55:05.091 FINE SocketException se=java.net.SocketException: 
socket closed 
::class.method=com.ibm.rcp.core.internal.daemon.Logging.fine() 
::thread=RcpD Command Processor 
::loggername=com.ibm.rcp.core.internal.daemon
2009/03/09 10:55:06.060 SEVERE Une erreur interne s'est produite pendant : 
"Send scratchpad container info to Notes". ::class.method=unknown 
::thread=Worker-1 ::loggername=org.eclipse.core.jobs

        java.lang.NullPointerException
        at 
com.ibm.workplace.noteswc.util.NoteswcPluginUtil$6.run(NoteswcPluginUtil.java:555)
        at org.eclipse.core.internal.jobs.Worker.run(Worker.java:55)
Activator - stop()
2009/03/09 10:55:07.623 SEVERE Une erreur interne s'est produite pendant : 
"Initial Auto Status Setting". ::class.method=unknown ::thread=Worker-12 
::loggername=org.eclipse.core.jobs

        java.lang.NullPointerException
        at 
com.ibm.collaboration.realtime.privacy.AutoStatusPrefs.<init>(AutoStatusPrefs.java:64)
        at 
com.ibm.collaboration.realtime.privacy.AutoStatusPrefInitializer$1.run(AutoStatusPrefInitializer.java:58)
        at org.eclipse.core.internal.jobs.Worker.run(Worker.java:55)
_______________________________________________
pde-dev mailing list
pde-dev@xxxxxxxxxxx
https://dev.eclipse.org/mailman/listinfo/pde-dev