Bug 149663 [PropertyPages] CCE when closing Properties dialog for Java project
I20060704-0800 - select a Java project in the Package Explorer - choose File > Properties - press OK Changes on other properties pages are also not saved because of this exception. java.lang.ClassCastException: org.eclipse.jdt.internal.core.JavaProject at org.eclipse.ui.internal.ide.dialogs.ResourceInfoPage.performOk(ResourceInfoPage.java:537) at org.eclipse.jface.preference.PreferenceDialog$11.run(PreferenceDialog.java:889) at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:37) at org.eclipse.core.runtime.Platform.run(Platform.java:843) at org.eclipse.ui.internal.JFaceUtil$1.run(JFaceUtil.java:44) at org.eclipse.jface.util.SafeRunnable.run(SafeRunnable.java:149) at org.eclipse.jface.preference.PreferenceDialog.okPressed(PreferenceDialog.java:869) at org.eclipse.ui.internal.dialogs.FilteredPreferenceDialog.okPressed(FilteredPreferenceDialog.java:377) at org.eclipse.jface.preference.PreferenceDialog.buttonPressed(PreferenceDialog.java:230) at org.eclipse.jface.dialogs.Dialog$3.widgetSelected(Dialog.java:660) at org.eclipse.swt.widgets.TypedListener.handleEvent(TypedListener.java:90) at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:66) at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:928) at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:3375) at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:2995) at org.eclipse.jface.window.Window.runEventLoop(Window.java:820) at org.eclipse.jface.window.Window.open(Window.java:796) at org.eclipse.ui.dialogs.PropertyDialogAction.run(PropertyDialogAction.java:156) at org.eclipse.jface.action.Action.runWithEvent(Action.java:499) at org.eclipse.jface.action.ActionContributionItem.handleWidgetSelection(ActionContributionItem.java:539) at org.eclipse.jface.action.ActionContributionItem.access$2(ActionContributionItem.java:488) at org.eclipse.jface.action.ActionContributionItem$5.handleEvent(ActionContributionItem.java:400) at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:66) at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:928) at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:3375) at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:2995) at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.java:1914) at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:1878) at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:419) at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:149) at org.eclipse.ui.internal.ide.IDEApplication.run(IDEApplication.java:95) at org.eclipse.core.internal.runtime.PlatformActivator$1.run(PlatformActivator.java:78) at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:92) at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:68) at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:400) at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:177) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:585) at org.eclipse.core.launcher.Main.invokeFramework(Main.java:336) at org.eclipse.core.launcher.Main.basicRun(Main.java:280) at org.eclipse.core.launcher.Main.run(Main.java:977) at org.eclipse.core.launcher.Main.main(Main.java:952)
bundles/org.eclipse.ui.ide/src/org/eclipse/ui/internal/ide/dialogs/ResourceInfoPage.java
private Button editableBox;
	private Button executableBox;
	private Button archiveBox;
	private Button derivedBox;
	private boolean previousReadOnlyValue;
	private boolean previousExecutableValue;
	private boolean previousArchiveValue;
	private boolean previousDerivedValue;
	private IContentDescription cachedContentDescription;
	private ResourceEncodingFieldEditor encodingEditor;
	private LineDelimiterEditor lineDelimiterEditor;
	private static String READ_ONLY = IDEWorkbenchMessages.ResourceInfo_readOnly;
	private static String EXECUTABLE = IDEWorkbenchMessages.ResourceInfo_executable;
	private static String ARCHIVE = IDEWorkbenchMessages.ResourceInfo_archive;
	private static String DERIVED = IDEWorkbenchMessages.ResourceInfo_derived;
	private static String TYPE_TITLE = IDEWorkbenchMessages.ResourceInfo_type;
	private static String LOCATION_TITLE = IDEWorkbenchMessages.ResourceInfo_location;
	private static String RESOLVED_LOCATION_TITLE = IDEWorkbenchMessages.ResourceInfo_resolvedLocation;
	private static String SIZE_TITLE = IDEWorkbenchMessages.ResourceInfo_size;
	private static String PATH_TITLE = IDEWorkbenchMessages.ResourceInfo_path;
	private static String TIMESTAMP_TITLE = IDEWorkbenchMessages.ResourceInfo_lastModified;
	private static String FILE_ENCODING_TITLE = IDEWorkbenchMessages.WorkbenchPreference_encoding;
	private static String CONTAINER_ENCODING_TITLE = IDEWorkbenchMessages.ResourceInfo_fileEncodingTitle;