Bug 37499 JUnit: Error on startup
I20030507.from20030512_1126 On startup of an existing workspace (containing a JUnit view as fast view), the Junit view fails to create java.lang.NullPointerException at org.eclipse.jdt.internal.junit.ui.TestRunnerViewPart.restoreLayoutState(TestRunnerViewPart.java:274) at org.eclipse.jdt.internal.junit.ui.TestRunnerViewPart.createPartControl(TestRunnerViewPart.java:842) at org.eclipse.ui.internal.PartPane$4.run(PartPane.java:141) at org.eclipse.core.internal.runtime.InternalPlatform.run(InternalPlatform.java:889) at org.eclipse.core.runtime.Platform.run(Platform.java:413) at org.eclipse.ui.internal.PartPane.createChildControl(PartPane.java:137) at org.eclipse.ui.internal.ViewPane.createChildControl(ViewPane.java:211) at org.eclipse.ui.internal.ViewFactory$2.run(ViewFactory.java:167) at org.eclipse.core.internal.runtime.InternalPlatform.run(InternalPlatform.java:889) at org.eclipse.core.runtime.Platform.run(Platform.java:413) at org.eclipse.ui.internal.ViewFactory.busyRestoreView(ViewFactory.java:98) at org.eclipse.ui.internal.ViewFactory$1.run(ViewFactory.java:82) at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:69) at org.eclipse.ui.internal.ViewFactory.restoreView(ViewFactory.java:78) at org.eclipse.ui.internal.ViewFactory$ViewReference.getPart(ViewFactory.java:332) at org.eclipse.ui.internal.ViewFactory$ViewReference.getView(ViewFactory.java:311) at org.eclipse.ui.internal.WorkbenchPage.findView(WorkbenchPage.java:1166) at org.eclipse.jdt.internal.junit.ui.JUnitPlugin.findTestRunnerViewPartInActivePage(JUnitPlugin.java:224) at org.eclipse.jdt.internal.junit.ui.JUnitPlugin.connectTestRunner(JUnitPlugin.java:191) at org.eclipse.jdt.internal.junit.ui.JUnitPlugin$1.run(JUnitPlugin.java:254) at org.eclipse.swt.widgets.RunnableLock.run(RunnableLock.java:35) at org.eclipse.swt.widgets.Synchronizer.runAsyncMessages(Synchronizer.java:98) at org.eclipse.swt.widgets.Display.runAsyncMessages(Display.java:1915) at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:1649) at org.eclipse.jface.operation.ModalContext$ModalContextThread.block(ModalContext.java:136) at org.eclipse.jface.operation.ModalContext.run(ModalContext.java:261) at org.eclipse.jface.dialogs.ProgressMonitorDialog.run(ProgressMonitorDialog.java:357) at org.eclipse.debug.ui.DebugUITools.launch(DebugUITools.java:494) at org.eclipse.debug.ui.actions.LaunchAction.run(LaunchAction.java:66) at org.eclipse.debug.ui.actions.LaunchAction.runWithEvent(LaunchAction.java:81) at org.eclipse.jface.action.ActionContributionItem.handleWidgetSelection(ActionContributionItem.java:526) at org.eclipse.jface.action.ActionContributionItem.access$4(ActionContributionItem.java:480) at org.eclipse.jface.action.ActionContributionItem$6.handleEvent(ActionContributionItem.java:452) at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:81) at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:848) at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:1938) at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:1645) at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.java:1402) at org.eclipse.ui.internal.Workbench.run(Workbench.java:1385) at org.eclipse.core.internal.boot.InternalBootLoader.run(InternalBootLoader.java:845) at org.eclipse.core.boot.BootLoader.run(BootLoader.java:461) 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:324) at org.eclipse.core.launcher.Main.basicRun(Main.java:291) at org.eclipse.core.launcher.Main.run(Main.java:747) at org.eclipse.core.launcher.Main.main(Main.java:583) !ENTRY org.eclipse.ui 4 4 Mai 12, 2003 16:56:05.618 !MESSAGE Unhandled exception caught in event loop. !ENTRY org.eclipse.ui 4 0 Mai 12, 2003 16:56:05.628 !MESSAGE Failed to execute runnable (java.lang.ClassCastException) !STACK 0 org.eclipse.swt.SWTException: Failed to execute runnable (java.lang.ClassCastException) at org.eclipse.swt.SWT.error(SWT.java:2345) at org.eclipse.swt.widgets.Synchronizer.runAsyncMessages(Synchronizer.java:101) at org.eclipse.swt.widgets.Display.runAsyncMessages(Display.java:1915) at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:1649) at org.eclipse.jface.operation.ModalContext$ModalContextThread.block(ModalContext.java:136) at org.eclipse.jface.operation.ModalContext.run(ModalContext.java:261) at org.eclipse.jface.dialogs.ProgressMonitorDialog.run(ProgressMonitorDialog.java:357) at org.eclipse.debug.ui.DebugUITools.launch(DebugUITools.java:494) at org.eclipse.debug.ui.actions.LaunchAction.run(LaunchAction.java:66) at org.eclipse.debug.ui.actions.LaunchAction.runWithEvent(LaunchAction.java:81) at org.eclipse.jface.action.ActionContributionItem.handleWidgetSelection(ActionContributionItem.java:526) at org.eclipse.jface.action.ActionContributionItem.access$4(ActionContributionItem.java:480) at org.eclipse.jface.action.ActionContributionItem$6.handleEvent(ActionContributionItem.java:452) at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:81) at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:848) at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:1938) at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:1645) at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.java:1402) at org.eclipse.ui.internal.Workbench.run(Workbench.java:1385) at org.eclipse.core.internal.boot.InternalBootLoader.run(InternalBootLoader.java:845) at org.eclipse.core.boot.BootLoader.run(BootLoader.java:461) 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:324) at org.eclipse.core.launcher.Main.basicRun(Main.java:291) at org.eclipse.core.launcher.Main.run(Main.java:747) at org.eclipse.core.launcher.Main.main(Main.java:583) !ENTRY org.eclipse.ui 4 4 Mai 12, 2003 16:56:05.638 !MESSAGE *** Stack trace of contained exception *** !ENTRY org.eclipse.ui 4 0 Mai 12, 2003 16:56:05.638 !MESSAGE java.lang.ClassCastException !STACK 0 java.lang.ClassCastException at org.eclipse.jdt.internal.junit.ui.JUnitPlugin.findTestRunnerViewPartInActivePage(JUnitPlugin.java:224) at org.eclipse.jdt.internal.junit.ui.JUnitPlugin.connectTestRunner(JUnitPlugin.java:191) at org.eclipse.jdt.internal.junit.ui.JUnitPlugin$1.run(JUnitPlugin.java:254) at org.eclipse.swt.widgets.RunnableLock.run(RunnableLock.java:35) at org.eclipse.swt.widgets.Synchronizer.runAsyncMessages(Synchronizer.java:98) at org.eclipse.swt.widgets.Display.runAsyncMessages(Display.java:1915) at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:1649) at org.eclipse.jface.operation.ModalContext$ModalContextThread.block(ModalContext.java:136) at org.eclipse.jface.operation.ModalContext.run(ModalContext.java:261) at org.eclipse.jface.dialogs.ProgressMonitorDialog.run(ProgressMonitorDialog.java:357) at org.eclipse.debug.ui.DebugUITools.launch(DebugUITools.java:494) at org.eclipse.debug.ui.actions.LaunchAction.run(LaunchAction.java:66) at org.eclipse.debug.ui.actions.LaunchAction.runWithEvent(LaunchAction.java:81) at org.eclipse.jface.action.ActionContributionItem.handleWidgetSelection(ActionContributionItem.java:526) at org.eclipse.jface.action.ActionContributionItem.access$4(ActionContributionItem.java:480) at org.eclipse.jface.action.ActionContributionItem$6.handleEvent(ActionContributionItem.java:452) at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:81) at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:848) at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:1938) at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:1645) at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.java:1402) at org.eclipse.ui.internal.Workbench.run(Workbench.java:1385) at org.eclipse.core.internal.boot.InternalBootLoader.run(InternalBootLoader.java:845) at org.eclipse.core.boot.BootLoader.run(BootLoader.java:461) 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:324) at org.eclipse.core.launcher.Main.basicRun(Main.java:291) at org.eclipse.core.launcher.Main.run(Main.java:747) at org.eclipse.core.launcher.Main.main(Main.java:583)
org.eclipse.jdt.junit/src/org/eclipse/jdt/internal/junit/ui/TestRunnerViewPart.java
return fTestProject;
	}
	
	public ILaunch getLastLaunch() {
		return fLastLaunch;
	}
	
	protected static Image createImage(String path) {
		try {
			ImageDescriptor id= ImageDescriptor.createFromURL(JUnitPlugin.makeIconFileURL(path));
			return id.createImage();
		} catch (MalformedURLException e) {
			
		}  
		return null;
	}
	private boolean isDisposed() {
		return fIsDisposed || fCounterPanel.isDisposed();
	}
	private Display getDisplay() {
		return getViewSite().getShell().getDisplay();
	}
	/**
	 * @see IWorkbenchPart#getTitleImage()
	 */
	public Image getTitleImage() {
		if (fOriginalViewImage == null)
			fOriginalViewImage= super.getTitleImage();
			
		if (fViewImage == null)