Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
[e4-dev] Exception when closing FormEditor with form Toolbar

Today I got an Exception when closing my Form editor that has some Actions in the Form Toolbar.

org.eclipse.e4.core.di.InjectionException: org.eclipse.swt.SWTException: Widget is disposed
at org.eclipse.e4.core.internal.di.MethodRequestor.execute(MethodRequestor.java:63)
at org.eclipse.e4.core.internal.contexts.ContextObjectSupplier$ContextInjectionListener.update(ContextObjectSupplier.java:75)
at org.eclipse.e4.core.internal.contexts.TrackableComputationExt.update(TrackableComputationExt.java:88)
at org.eclipse.e4.core.internal.contexts.EclipseContext.processScheduled(EclipseContext.java:326)
at org.eclipse.e4.core.internal.contexts.EclipseContext.set(EclipseContext.java:343)
at org.eclipse.e4.core.internal.contexts.EclipseContext.activate(EclipseContext.java:596)
at org.eclipse.e4.core.internal.contexts.EclipseContext.activateBranch(EclipseContext.java:601)
at org.eclipse.e4.ui.internal.workbench.PartActivationHistory.activate(PartActivationHistory.java:52)
at org.eclipse.e4.ui.internal.workbench.PartServiceImpl.activate(PartServiceImpl.java:518)
at org.eclipse.e4.ui.internal.workbench.PartServiceImpl.activate(PartServiceImpl.java:477)
at org.eclipse.e4.ui.internal.workbench.swt.AbstractPartRenderer.activate(AbstractPartRenderer.java:105)
at org.eclipse.e4.ui.workbench.renderers.swt.ContributedPartRenderer$3.handleEvent(ContributedPartRenderer.java:210)
at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:84)
at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1053)
at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1077)
at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1058)
at org.eclipse.swt.widgets.Shell.setActiveControl(Shell.java:1444)
at org.eclipse.swt.widgets.Control.sendFocusEvent(Control.java:2823)
at org.eclipse.swt.widgets.Widget.wmSetFocus(Widget.java:2403)
at org.eclipse.swt.widgets.Control.WM_SETFOCUS(Control.java:5135)
at org.eclipse.swt.widgets.Canvas.WM_SETFOCUS(Canvas.java:448)
at org.eclipse.swt.widgets.Control.windowProc(Control.java:4581)
at org.eclipse.swt.widgets.Canvas.windowProc(Canvas.java:341)
at org.eclipse.swt.widgets.Display.windowProc(Display.java:4957)
at org.eclipse.swt.internal.win32.OS.DestroyWindow(Native Method)
at org.eclipse.swt.widgets.Control.destroyWidget(Control.java:771)
at org.eclipse.swt.widgets.Widget.release(Widget.java:818)
at org.eclipse.swt.widgets.Widget.dispose(Widget.java:446)
at org.eclipse.jface.action.ToolBarManager.dispose(ToolBarManager.java:153)
at org.eclipse.ui.internal.forms.widgets.FormHeading$6.widgetDisposed(FormHeading.java:772)
at org.eclipse.swt.widgets.TypedListener.handleEvent(TypedListener.java:123)
at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:84)
at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1053)
at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1077)
at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1058)
at org.eclipse.swt.widgets.Widget.release(Widget.java:808)
at org.eclipse.swt.widgets.Composite.releaseChildren(Composite.java:873)
at org.eclipse.swt.widgets.Widget.release(Widget.java:811)
at org.eclipse.swt.widgets.Composite.releaseChildren(Composite.java:873)
at org.eclipse.swt.widgets.Widget.release(Widget.java:811)
at org.eclipse.swt.widgets.Composite.releaseChildren(Composite.java:873)
at org.eclipse.swt.widgets.Widget.release(Widget.java:811)
at org.eclipse.swt.widgets.Composite.releaseChildren(Composite.java:873)
at org.eclipse.swt.widgets.Widget.release(Widget.java:811)
at org.eclipse.swt.widgets.Composite.releaseChildren(Composite.java:873)
at org.eclipse.swt.widgets.Widget.release(Widget.java:811)
at org.eclipse.swt.widgets.Widget.dispose(Widget.java:446)
at org.eclipse.e4.ui.workbench.renderers.swt.SWTPartRenderer.disposeWidget(SWTPartRenderer.java:137)
at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.safeRemoveGui(PartRenderingEngine.java:692)
at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.access$2(PartRenderingEngine.java:636)
at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$6.run(PartRenderingEngine.java:631)
at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42)
at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.removeGui(PartRenderingEngine.java:616)
at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$1.handleEvent(PartRenderingEngine.java:137)
at org.eclipse.e4.ui.services.internal.events.UIEventHandler$1.run(UIEventHandler.java:41)
at org.eclipse.swt.widgets.Synchronizer.syncExec(Synchronizer.java:179)
at org.eclipse.ui.internal.UISynchronizer.syncExec(UISynchronizer.java:150)
at org.eclipse.swt.widgets.Display.syncExec(Display.java:4668)
at org.eclipse.e4.ui.internal.workbench.swt.E4Application$1.syncExec(E4Application.java:172)
at org.eclipse.e4.ui.services.internal.events.UIEventHandler.handleEvent(UIEventHandler.java:38)
at org.eclipse.equinox.internal.event.EventHandlerWrapper.handleEvent(EventHandlerWrapper.java:197)
at org.eclipse.equinox.internal.event.EventHandlerTracker.dispatchEvent(EventHandlerTracker.java:197)
at org.eclipse.equinox.internal.event.EventHandlerTracker.dispatchEvent(EventHandlerTracker.java:1)
at org.eclipse.osgi.framework.eventmgr.EventManager.dispatchEvent(EventManager.java:230)
at org.eclipse.osgi.framework.eventmgr.ListenerQueue.dispatchEventSynchronous(ListenerQueue.java:148)
at org.eclipse.equinox.internal.event.EventAdminImpl.dispatchEvent(EventAdminImpl.java:135)
at org.eclipse.equinox.internal.event.EventAdminImpl.sendEvent(EventAdminImpl.java:78)
at org.eclipse.equinox.internal.event.EventComponent.sendEvent(EventComponent.java:39)
at org.eclipse.e4.ui.services.internal.events.EventBroker.send(EventBroker.java:81)
at org.eclipse.e4.ui.internal.workbench.UIEventPublisher.notifyChanged(UIEventPublisher.java:58)
at org.eclipse.emf.common.notify.impl.BasicNotifierImpl.eNotify(BasicNotifierImpl.java:380)
at org.eclipse.e4.ui.model.application.ui.impl.UIElementImpl.setToBeRendered(UIElementImpl.java:290)
at org.eclipse.e4.ui.internal.workbench.PartServiceImpl.hidePart(PartServiceImpl.java:987)
at org.eclipse.e4.ui.internal.workbench.PartServiceImpl.hidePart(PartServiceImpl.java:926)
at org.eclipse.e4.ui.workbench.renderers.swt.StackRenderer.closePart(StackRenderer.java:517)
at org.eclipse.e4.ui.workbench.renderers.swt.StackRenderer.access$6(StackRenderer.java:502)
at org.eclipse.e4.ui.workbench.renderers.swt.StackRenderer$5.close(StackRenderer.java:485)
at org.eclipse.e4.ui.widgets.CTabFolder.onMouse(CTabFolder.java:1640)
at org.eclipse.e4.ui.widgets.CTabFolder$2.handleEvent(CTabFolder.java:270)
at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:84)
at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1053)
at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:4150)
at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3739)
at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$7.run(PartRenderingEngine.java:852)
at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332)
at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:768)
at org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:87)
at org.eclipse.ui.internal.Workbench$3.run(Workbench.java:542)
at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332)
at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:524)
at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:149)
at de.eiswind.paris.client.core.Application.start(Application.java:45)
at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:196)
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:344)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:179)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:622)
at org.eclipse.equinox.launcher.Main.basicRun(Main.java:577)
at org.eclipse.equinox.launcher.Main.run(Main.java:1410)
at org.eclipse.equinox.launcher.Main.main(Main.java:1386)
Caused by: org.eclipse.swt.SWTException: Widget is disposed
at org.eclipse.swt.SWT.error(SWT.java:4277)
at org.eclipse.swt.SWT.error(SWT.java:4192)
at org.eclipse.swt.SWT.error(SWT.java:4163)
at org.eclipse.swt.widgets.Widget.error(Widget.java:468)
at org.eclipse.swt.widgets.Widget.checkWidget(Widget.java:340)
at org.eclipse.swt.widgets.Widget.getData(Widget.java:525)
at org.eclipse.ui.part.MultiPageEditorPart.getEditor(MultiPageEditorPart.java:609)
at org.eclipse.ui.part.MultiPageEditorPart.getActiveEditor(MultiPageEditorPart.java:533)
at org.eclipse.ui.forms.editor.FormEditor.getActiveEditor(FormEditor.java:430)
at org.eclipse.ui.part.MultiPageEditorPart.getAdapter(MultiPageEditorPart.java:1172)
at org.eclipse.ui.internal.util.Util.getAdapter(Util.java:110)
at org.eclipse.ui.internal.WorkbenchPage.getShowInSource(WorkbenchPage.java:370)
at org.eclipse.ui.internal.WorkbenchPage.getContext(WorkbenchPage.java:374)
at org.eclipse.ui.internal.WorkbenchPage.updateShowInSources(WorkbenchPage.java:362)
at org.eclipse.ui.internal.WorkbenchPage.updateActivations(WorkbenchPage.java:232)
at org.eclipse.ui.internal.WorkbenchPage.access$10(WorkbenchPage.java:223)
at org.eclipse.ui.internal.WorkbenchPage$E4PartListener.partActivated(WorkbenchPage.java:152)
at org.eclipse.e4.ui.internal.workbench.PartServiceImpl.firePartActivated(PartServiceImpl.java:176)
at org.eclipse.e4.ui.internal.workbench.PartServiceImpl.setPart(PartServiceImpl.java:150)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at org.eclipse.e4.core.internal.di.MethodRequestor.execute(MethodRequestor.java:56)
... 104 more

Unfortunatley I cannot reproduce this for sure. It seems to happen "randomly". I think I have seen this some weeks before now.

Another things I experienced and that I cannot reproduce for sure, seems to happen sometimes when I close and re-open the editor is
!ENTRY org.eclipse.e4.ui.workbench 4 0 2011-03-20 14:09:31.068
!MESSAGE Internal Error
!STACK 0
java.lang.NullPointerException
at org.eclipse.e4.ui.widgets.CTabItem.getFont(CTabItem.java:195)
at org.eclipse.e4.ui.css.swt.helpers.CSSSWTFontHelper.getFont(CSSSWTFontHelper.java:401)
at org.eclipse.e4.ui.css.swt.helpers.CSSSWTFontHelper.getCSS2FontProperties(CSSSWTFontHelper.java:73)
at org.eclipse.e4.ui.css.swt.properties.css2.CSSPropertyFontSWTHandler.applyCSSProperty(CSSPropertyFontSWTHandler.java:65)
at org.eclipse.e4.ui.css.core.impl.engine.AbstractCSSEngine.applyCSSProperty(AbstractCSSEngine.java:675)
at org.eclipse.e4.ui.css.core.impl.engine.AbstractCSSEngine.applyStyleDeclaration(AbstractCSSEngine.java:440)
at org.eclipse.e4.ui.css.core.impl.engine.AbstractCSSEngine.applyStyles(AbstractCSSEngine.java:357)
at org.eclipse.e4.ui.css.core.impl.engine.AbstractCSSEngine.applyStyles(AbstractCSSEngine.java:297)
at org.eclipse.e4.ui.css.swt.engine.CSSSWTApplyStylesListener$1.handleEvent(CSSSWTApplyStylesListener.java:31)
at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:84)
at org.eclipse.swt.widgets.Display.sendEvent(Display.java:4324)
at org.eclipse.swt.widgets.Display.runSkin(Display.java:4233)
at org.eclipse.swt.widgets.Composite.computeSize(Composite.java:227)
at org.eclipse.jface.window.Window.getInitialSize(Window.java:594)
at org.eclipse.jface.dialogs.Dialog.getInitialSize(Dialog.java:1196)
at org.eclipse.jface.window.Window.initializeBounds(Window.java:764)
at org.eclipse.jface.dialogs.Dialog.initializeBounds(Dialog.java:714)
at org.eclipse.jface.window.Window.create(Window.java:435)
at org.eclipse.jface.dialogs.Dialog.create(Dialog.java:1089)
at org.eclipse.jface.window.Window.open(Window.java:790)
at org.eclipse.jface.dialogs.ErrorDialog.open(ErrorDialog.java:360)
at org.eclipse.e4.ui.internal.workbench.swt.WorkbenchStatusReporter.openDialog(WorkbenchStatusReporter.java:97)
at org.eclipse.e4.ui.internal.workbench.swt.WorkbenchStatusReporter.report(WorkbenchStatusReporter.java:54)
at org.eclipse.e4.core.services.statusreporter.StatusReporter.show(StatusReporter.java:132)
at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$7.safeHandle(PartRenderingEngine.java:889)
at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$7.handle(PartRenderingEngine.java:873)org.eclipse.swt.SWTException: Failed to execute runnable (java.lang.IllegalArgumentException: Index out of bounds)
at org.eclipse.swt.SWT.error(SWT.java:4277)
at org.eclipse.swt.SWT.error(SWT.java:4192)
at org.eclipse.swt.widgets.Synchronizer.runAsyncMessages(Synchronizer.java:137)
at org.eclipse.swt.widgets.Display.runAsyncMessages(Display.java:4125)
at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3742)
at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$7.run(PartRenderingEngine.java:852)
at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332)
at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:768)
at org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:87)
at org.eclipse.ui.internal.Workbench$3.run(Workbench.java:542)
at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332)
at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:524)
at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:149)
at de.eiswind.paris.client.core.Application.start(Application.java:45)
at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:196)
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:344)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:179)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:622)
at org.eclipse.equinox.launcher.Main.basicRun(Main.java:577)
at org.eclipse.equinox.launcher.Main.run(Main.java:1410)
at org.eclipse.equinox.launcher.Main.main(Main.java:1386)
Caused by: java.lang.IllegalArgumentException: Index out of bounds
at org.eclipse.swt.SWT.error(SWT.java:4258)
at org.eclipse.swt.SWT.error(SWT.java:4192)
at org.eclipse.swt.SWT.error(SWT.java:4163)
at org.eclipse.e4.ui.widgets.CTabFolder.createItem(CTabFolder.java:451)
at org.eclipse.e4.ui.widgets.CTabItem.<init>(CTabItem.java:119)
at org.eclipse.e4.ui.workbench.renderers.swt.StackRenderer.createTab(StackRenderer.java:352)
at org.eclipse.e4.ui.workbench.renderers.swt.StackRenderer.childRendered(StackRenderer.java:391)
at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.createGui(PartRenderingEngine.java:544)
at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.createGui(PartRenderingEngine.java:597)
at org.eclipse.e4.ui.internal.workbench.PartServiceImpl.showPart(PartServiceImpl.java:898)
at org.eclipse.ui.internal.WorkbenchPartReference.getPart(WorkbenchPartReference.java:482)
at org.eclipse.ui.internal.EditorReference.getEditor(EditorReference.java:233)
at org.eclipse.ui.internal.WorkbenchPage.busyOpenEditor(WorkbenchPage.java:2638)
at org.eclipse.ui.internal.WorkbenchPage.access$18(WorkbenchPage.java:2609)
at org.eclipse.ui.internal.WorkbenchPage$7.run(WorkbenchPage.java:2591)
at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:70)
at org.eclipse.ui.internal.WorkbenchPage.openEditor(WorkbenchPage.java:2587)
at org.eclipse.ui.internal.WorkbenchPage.openEditor(WorkbenchPage.java:2567)
at org.eclipse.ui.internal.WorkbenchPage.openEditor(WorkbenchPage.java:2550)
at de.eiswind.paris.client.core.ui.editorhelper.EntityEditorManager$1$1.run(EntityEditorManager.java:119)
at org.eclipse.swt.widgets.RunnableLock.run(RunnableLock.java:35)
at org.eclipse.swt.widgets.Synchronizer.runAsyncMessages(Synchronizer.java:134)
... 24 more

at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$7.run(PartRenderingEngine.java:861)
at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332)
at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:768)
at org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:87)
at org.eclipse.ui.internal.Workbench$3.run(Workbench.java:542)
at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332)
at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:524)
at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:149)
at de.eiswind.paris.client.core.Application.start(Application.java:45)
at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:196)
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:344)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:179)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:622)
at org.eclipse.equinox.launcher.Main.basicRun(Main.java:577)
at org.eclipse.equinox.launcher.Main.run(Main.java:1410)
at org.eclipse.equinox.launcher.Main.main(Main.java:1386)

As these are not clearly reporducable but seems to happen from time to time, I hesitate to open bugs for them.
Maybe you could take a look at the stacktraces and get some information out of them.

Greets from Sunday coding fun.

Thomas


Back to the top