Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read this important communication.
Bug 332093 - SWTException in the 'Deployment Assembly' properties page
Summary: SWTException in the 'Deployment Assembly' properties page
Status: RESOLVED FIXED
Alias: None
Product: WTP Common Tools
Classification: WebTools
Component: wst.common (show other bugs)
Version: unspecified   Edit
Hardware: PC Windows Vista
: P3 normal (vote)
Target Milestone: 3.2.3   Edit
Assignee: Aidyl Kareh CLA
QA Contact: Carl Anderson CLA
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2010-12-07 17:32 EST by Aidyl Kareh CLA
Modified: 2010-12-09 00:44 EST (History)
2 users (show)

See Also:
ccc: review+


Attachments
Proposed patch (1.34 KB, patch)
2010-12-07 17:38 EST, Aidyl Kareh CLA
ccc: iplog+
Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Aidyl Kareh CLA 2010-12-07 17:32:32 EST
Build Identifier: WTP 3.2.3

Steps to recreate:
1) Create an EE5 project with default modules and a DD.
2) Open the 'Deployment Assembly' page and set the library directory field to an empty value and click 'OK'.
3) Open the 'Deployment Assembly' page again and set the library directory field to lib (this closes the problems panel)
4) Without closing the properties dialog, select the 'Project Facets' option from the tree view on the left (the following exception was logged)

org.eclipse.swt.SWTException: Widget is disposed
	at org.eclipse.swt.SWT.error(SWT.java:4083)
	at org.eclipse.swt.SWT.error(SWT.java:3998)
	at org.eclipse.swt.SWT.error(SWT.java:3969)
	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.Composite.computeSize(Composite.java:226)
	at 

org.eclipse.swt.custom.ScrolledCompositeLayout.computeSize(ScrolledCompositeLayout.java:

32)
	at org.eclipse.swt.widgets.Composite.computeSize(Composite.java:233)
	at org.eclipse.swt.custom.SashFormLayout.computeSize(SashFormLayout.java:39)
	at org.eclipse.swt.widgets.Composite.computeSize(Composite.java:233)
	at org.eclipse.swt.layout.GridData.computeSize(GridData.java:502)
	at org.eclipse.swt.layout.GridLayout.layout(GridLayout.java:478)
	at org.eclipse.swt.layout.GridLayout.layout(GridLayout.java:193)
	at org.eclipse.swt.widgets.Composite.updateLayout(Composite.java:1275)
	at org.eclipse.swt.widgets.Composite.sendResize(Composite.java:979)
	at org.eclipse.swt.widgets.Composite.setBounds(Composite.java:1024)
	at org.eclipse.swt.widgets.Control.setBounds(Control.java:2777)
	at org.eclipse.swt.widgets.Control.setSize(Control.java:3291)
	at 

org.eclipse.jface.preference.PreferenceDialog$PageLayout.layout(PreferenceDialog.java:12

4)
	at org.eclipse.swt.widgets.Composite.updateLayout(Composite.java:1275)
	at org.eclipse.swt.widgets.Composite.sendResize(Composite.java:979)
	at org.eclipse.swt.widgets.Composite.setBounds(Composite.java:1024)
	at org.eclipse.swt.widgets.Control.setBounds(Control.java:2777)
	at org.eclipse.swt.widgets.Control.setBounds(Control.java:2773)
	at org.eclipse.swt.widgets.Control.setBounds(Control.java:2840)
	at 

org.eclipse.swt.custom.ScrolledCompositeLayout.layout(ScrolledCompositeLayout.java:109)
	at org.eclipse.swt.widgets.Composite.updateLayout(Composite.java:1275)
	at org.eclipse.swt.widgets.Composite.WM_SIZE(Composite.java:1664)
	at org.eclipse.swt.widgets.Control.windowProc(Control.java:4234)
	at org.eclipse.swt.widgets.Display.windowProc(Display.java:4873)
	at org.eclipse.swt.internal.win32.OS.DefWindowProcW(Native Method)
	at org.eclipse.swt.internal.win32.OS.DefWindowProc(OS.java:2454)
	at org.eclipse.swt.widgets.Scrollable.callWindowProc(Scrollable.java:80)
	at org.eclipse.swt.widgets.Control.WM_WINDOWPOSCHANGED(Control.java:4970)
	at org.eclipse.swt.widgets.Control.windowProc(Control.java:4244)
	at org.eclipse.swt.widgets.Display.windowProc(Display.java:4873)
	at org.eclipse.swt.internal.win32.OS.SetWindowPos(Native Method)
	at org.eclipse.swt.widgets.Widget.SetWindowPos(Widget.java:1456)
	at org.eclipse.swt.widgets.Control.setBounds(Control.java:2816)
	at org.eclipse.swt.widgets.Composite.setBounds(Composite.java:1018)
	at org.eclipse.swt.widgets.Control.setBounds(Control.java:2777)
	at org.eclipse.swt.widgets.Control.setBounds(Control.java:2773)
	at org.eclipse.swt.layout.GridLayout.layout(GridLayout.java:689)
	at org.eclipse.swt.layout.GridLayout.layout(GridLayout.java:193)
	at org.eclipse.swt.widgets.Composite.updateLayout(Composite.java:1275)
	at org.eclipse.swt.widgets.Composite.WM_SIZE(Composite.java:1664)
	at org.eclipse.swt.widgets.Control.windowProc(Control.java:4234)
	at org.eclipse.swt.widgets.Display.windowProc(Display.java:4873)
	at org.eclipse.swt.internal.win32.OS.DefWindowProcW(Native Method)
	at org.eclipse.swt.internal.win32.OS.DefWindowProc(OS.java:2454)
	at org.eclipse.swt.widgets.Scrollable.callWindowProc(Scrollable.java:80)
	at org.eclipse.swt.widgets.Control.WM_WINDOWPOSCHANGED(Control.java:4970)
	at org.eclipse.swt.widgets.Control.windowProc(Control.java:4244)
	at org.eclipse.swt.widgets.Display.windowProc(Display.java:4886)
	at org.eclipse.swt.internal.win32.OS.EndDeferWindowPos(Native Method)
	at org.eclipse.swt.widgets.Composite.resizeChildren(Composite.java:948)
	at org.eclipse.swt.widgets.Composite.resizeChildren(Composite.java:914)
	at org.eclipse.swt.widgets.Composite.setResizeChildren(Composite.java:1138)
	at org.eclipse.swt.widgets.Composite.WM_SIZE(Composite.java:1668)
	at org.eclipse.swt.widgets.Control.windowProc(Control.java:4234)
	at org.eclipse.swt.widgets.Display.windowProc(Display.java:4873)
	at org.eclipse.swt.internal.win32.OS.DefWindowProcW(Native Method)
	at org.eclipse.swt.internal.win32.OS.DefWindowProc(OS.java:2454)
	at org.eclipse.swt.widgets.Scrollable.callWindowProc(Scrollable.java:80)
	at org.eclipse.swt.widgets.Control.WM_WINDOWPOSCHANGED(Control.java:4970)
	at org.eclipse.swt.widgets.Control.windowProc(Control.java:4244)
	at org.eclipse.swt.widgets.Display.windowProc(Display.java:4886)
	at org.eclipse.swt.internal.win32.OS.EndDeferWindowPos(Native Method)
	at org.eclipse.swt.widgets.Composite.resizeChildren(Composite.java:948)
	at org.eclipse.swt.widgets.Composite.resizeChildren(Composite.java:914)
	at org.eclipse.swt.widgets.Composite.setResizeChildren(Composite.java:1138)
	at org.eclipse.swt.widgets.Composite.WM_SIZE(Composite.java:1668)
	at org.eclipse.swt.widgets.Control.windowProc(Control.java:4234)
	at org.eclipse.swt.widgets.Display.windowProc(Display.java:4873)
	at org.eclipse.swt.internal.win32.OS.DefWindowProcW(Native Method)
	at org.eclipse.swt.internal.win32.OS.DefWindowProc(OS.java:2454)
	at org.eclipse.swt.widgets.Scrollable.callWindowProc(Scrollable.java:80)
	at org.eclipse.swt.widgets.Control.WM_WINDOWPOSCHANGED(Control.java:4970)
	at org.eclipse.swt.widgets.Control.windowProc(Control.java:4244)
	at org.eclipse.swt.widgets.Display.windowProc(Display.java:4886)
	at org.eclipse.swt.internal.win32.OS.EndDeferWindowPos(Native Method)
	at org.eclipse.swt.widgets.Composite.resizeChildren(Composite.java:948)
	at org.eclipse.swt.widgets.Composite.resizeChildren(Composite.java:914)
	at org.eclipse.swt.widgets.Composite.setResizeChildren(Composite.java:1138)
	at org.eclipse.swt.widgets.Composite.WM_SIZE(Composite.java:1668)
	at org.eclipse.swt.widgets.Control.windowProc(Control.java:4234)
	at org.eclipse.swt.widgets.Display.windowProc(Display.java:4873)
	at org.eclipse.swt.internal.win32.OS.DefWindowProcW(Native Method)
	at org.eclipse.swt.internal.win32.OS.DefWindowProc(OS.java:2454)
	at org.eclipse.swt.widgets.Scrollable.callWindowProc(Scrollable.java:80)
	at org.eclipse.swt.widgets.Control.WM_WINDOWPOSCHANGED(Control.java:4970)
	at org.eclipse.swt.widgets.Control.windowProc(Control.java:4244)
	at org.eclipse.swt.widgets.Display.windowProc(Display.java:4873)
	at org.eclipse.swt.internal.win32.OS.SetWindowPos(Native Method)
	at org.eclipse.swt.widgets.Widget.SetWindowPos(Widget.java:1456)
	at org.eclipse.swt.widgets.Control.setBounds(Control.java:2816)
	at org.eclipse.swt.widgets.Composite.setBounds(Composite.java:1018)
	at org.eclipse.swt.widgets.Control.setBounds(Control.java:2777)
	at org.eclipse.swt.widgets.Control.setBounds(Control.java:2773)
	at org.eclipse.swt.layout.GridLayout.layout(GridLayout.java:689)
	at org.eclipse.swt.layout.GridLayout.layout(GridLayout.java:193)
	at org.eclipse.swt.widgets.Composite.updateLayout(Composite.java:1275)
	at org.eclipse.swt.widgets.Composite.sendResize(Composite.java:979)
	at org.eclipse.swt.widgets.Composite.setBounds(Composite.java:1024)
	at org.eclipse.swt.widgets.Decorations.setBounds(Decorations.java:871)
	at org.eclipse.swt.widgets.Shell.setBounds(Shell.java:1476)
	at org.eclipse.swt.widgets.Control.setBounds(Control.java:2777)
	at org.eclipse.swt.widgets.Control.setBounds(Control.java:2773)
	at org.eclipse.swt.widgets.Control.setBounds(Control.java:2840)
	at 

org.eclipse.jface.preference.PreferenceDialog.setShellSize(PreferenceDialog.java:1212)
	at 

org.eclipse.jface.preference.PreferenceDialog.showPage(PreferenceDialog.java:1300)
	at 

org.eclipse.ui.internal.dialogs.FilteredPreferenceDialog.showPage(FilteredPreferenceDial

og.java:673)
	at 

org.eclipse.jface.preference.PreferenceDialog$10.run(PreferenceDialog.java:708)
	at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:70)
	at 

org.eclipse.jface.preference.PreferenceDialog$9.selectionChanged(PreferenceDialog.java:7

04)
	at org.eclipse.jface.viewers.StructuredViewer$3.run(StructuredViewer.java:867)
	at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42)
	at org.eclipse.ui.internal.JFaceUtil$1.run(JFaceUtil.java:49)
	at org.eclipse.jface.util.SafeRunnable.run(SafeRunnable.java:175)
	at 

org.eclipse.jface.viewers.StructuredViewer.firePostSelectionChanged(StructuredViewer.jav

a:865)
	at 

org.eclipse.jface.viewers.StructuredViewer.handlePostSelect(StructuredViewer.java:1205)
	at 

org.eclipse.jface.viewers.StructuredViewer$5.widgetSelected(StructuredViewer.java:1230)
	at 

org.eclipse.jface.util.OpenStrategy.firePostSelectionEvent(OpenStrategy.java:251)
	at org.eclipse.jface.util.OpenStrategy.access$5(OpenStrategy.java:245)
	at org.eclipse.jface.util.OpenStrategy$3.run(OpenStrategy.java:419)
	at org.eclipse.swt.widgets.RunnableLock.run(RunnableLock.java:35)
	at org.eclipse.swt.widgets.Synchronizer.runAsyncMessages(Synchronizer.java:134)
	at org.eclipse.swt.widgets.Display.runAsyncMessages(Display.java:4041)
	at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3660)
	at org.eclipse.jface.window.Window.runEventLoop(Window.java:825)
	at org.eclipse.jface.window.Window.open(Window.java:801)
	at 

org.eclipse.ui.dialogs.PropertyDialogAction.run(PropertyDialogAction.java:157)
	at org.eclipse.jface.action.Action.runWithEvent(Action.java:498)
	at 

org.eclipse.jface.action.ActionContributionItem.handleWidgetSelection(ActionContribution

Item.java:584)
	at 

org.eclipse.jface.action.ActionContributionItem.access$2(ActionContributionItem.java:501

)
	at 

org.eclipse.jface.action.ActionContributionItem$5.handleEvent(ActionContributionItem.jav

a:411)
	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:4066)
	at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3657)
	at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.java:2640)
	at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:2604)
	at org.eclipse.ui.internal.Workbench.access$4(Workbench.java:2438)
	at org.eclipse.ui.internal.Workbench$7.run(Workbench.java:671)
	at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332)
	at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:664)
	at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:149)
	at 

org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:115)
	at 

org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:196)
	at 

org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLa

uncher.java:110)
	at 

org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.ja

va:79)
	at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:369)
	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:619)
	at org.eclipse.equinox.launcher.Main.basicRun(Main.java:574)
	at org.eclipse.equinox.launcher.Main.run(Main.java:1407)


Reproducible: Always
Comment 1 Aidyl Kareh CLA 2010-12-07 17:38:51 EST
Created attachment 184761 [details]
Proposed patch

This patch moves the location where the elements in the problems panel are disposed() so that hiding the panel no longer disposes the contents of the problems panel.
Comment 2 Carl Anderson CLA 2010-12-09 00:43:59 EST
Committed to R3_2_maintenance and HEAD for WTP 3.2.3 and WTP 3.3