Bug 14898 working set class cast exception
20020425 with plugin export .5 on Linux-Motif and W2k: 1) Edit an existing working set from package view. 2) Select and Unselect a project -> Finish button is enabled now. 3) Press Finish -> see result below ---8<--- java.lang.ClassCastException: java.lang.String at org.eclipse.jdt.internal.ui.packageview.PackageExplorerActionGroup$1.propertyCha nge(PackageExplorerActionGroup.java:299) at org.eclipse.jdt.internal.ui.workingsets.WorkingSetFilterActionGroup$2.propertyCh ange(WorkingSetFilterActionGroup.java:223) at org.eclipse.ui.internal.WorkingSet.firePropertyChange (WorkingSet.java:74) at org.eclipse.ui.internal.WorkingSet.setName(WorkingSet.java:214) at org.eclipse.ui.internal.dialogs.ResourceWorkingSetPage.finish (ResourceWorkingSetPage.java:189) at org.eclipse.ui.internal.dialogs.WorkingSetEditWizard.performFinish (WorkingSetEditWizard.java:78) at org.eclipse.jface.wizard.WizardDialog.finishPressed (WizardDialog.java:577) at org.eclipse.jface.wizard.WizardDialog.buttonPressed (WizardDialog.java:312) at org.eclipse.jface.dialogs.Dialog$1.widgetSelected(Dialog.java:379) at org.eclipse.swt.widgets.TypedListener.handleEvent (TypedListener.java:85) at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:75) at org.eclipse.swt.widgets.Widget.notifyListeners(Widget.java:637) at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:1412) at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:1208) at org.eclipse.jface.window.Window.runEventLoop(Window.java:538) at org.eclipse.jface.window.Window.open(Window.java:525) at org.eclipse.ui.internal.dialogs.WorkingSetSelectionDialog.editSelectedWorkingSet (WorkingSetSelectionDialog.java:246) at org.eclipse.ui.internal.dialogs.WorkingSetSelectionDialog.access$1 (WorkingSetSelectionDialog.java:214) at org.eclipse.ui.internal.dialogs.WorkingSetSelectionDialog$2.widgetSelected (WorkingSetSelectionDialog.java:110) at org.eclipse.swt.widgets.TypedListener.handleEvent (TypedListener.java:85) at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:75) at org.eclipse.swt.widgets.Widget.notifyListeners(Widget.java:637) at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:1412) at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:1208) at org.eclipse.jface.window.Window.runEventLoop(Window.java:538) at org.eclipse.jface.window.Window.open(Window.java:525) at org.eclipse.ui.internal.dialogs.WorkingSetSelectionDialog.open (WorkingSetSelectionDialog.java:297) at org.eclipse.jdt.internal.ui.workingsets.SelectWorkingSetAction.run (SelectWorkingSetAction.java:66) at org.eclipse.jface.action.Action.runWithEvent(Action.java:590) at org.eclipse.jface.action.ActionContributionItem.handleWidgetSelection (ActionContributionItem.java:407) at org.eclipse.jface.action.ActionContributionItem.handleWidgetEvent (ActionContributionItem.java:361) at org.eclipse.jface.action.ActionContributionItem.access$0 (ActionContributionItem.java:352) at org.eclipse.jface.action.ActionContributionItem$ActionListener.handleEvent (ActionContributionItem.java:47) at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:75) at org.eclipse.swt.widgets.Widget.notifyListeners(Widget.java:637) at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:1412) at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:1208) at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.java:842) at org.eclipse.ui.internal.Workbench.run(Workbench.java:825) at org.eclipse.core.internal.boot.InternalBootLoader.run (InternalBootLoader.java:643) at org.eclipse.core.boot.BootLoader.run(BootLoader.java:349) at java.lang.reflect.Method.invoke(Native Method) at org.eclipse.core.launcher.Main.basicRun(Main.java:160) at org.eclipse.core.launcher.Main.run(Main.java:548) at org.eclipse.core.launcher.Main.main(Main.java:403)
org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/browsing/JavaBrowsingPart.java
setInitialSelection();
		
		
		getViewSite().getWorkbenchWindow().getSelectionService().addSelectionListener(this);
		getViewSite().getPage().addPartListener(fPartListener);
		
		fillActionBars();
		
		setHelp();
	}
	private void initDragAndDrop() {
		int ops= DND.DROP_COPY | DND.DROP_MOVE;
		Transfer[] transfers= new Transfer[] {
			LocalSelectionTransfer.getInstance(), 
			ResourceTransfer.getInstance()};
		
		
		TransferDropTargetListener[] dropListeners= new TransferDropTargetListener[] {
			new SelectionTransferDropAdapter(fViewer)
		};
		fViewer.addDropSupport(ops, transfers, new DelegatingDropAdapter(dropListeners));
		
		
		Control control= fViewer.getControl();
		TransferDragSourceListener[] dragListeners= new TransferDragSourceListener[] {
			new SelectionTransferDragAdapter(fViewer),
			new ResourceTransferDragAdapter(fViewer)
		};
		DragSource source= new DragSource(control, ops);