Project: Eclipse_Platform_UI
Bug 100799 [ErrorHandling] 'Unable to create view' error page should link to error log view
Reported: 2005-06-20 08:40:40 | Status: verified fixed

I20050617-1618 I compiled a plug-in with a view against a 5.0 JRE. When I ran this plugin in a run-time eclipse with a 1.4 VM, startup passed without any error message. When I opened the view, I got a view with an embedded error dialog showing a ClassNotFoundException. This stacktrace was not really helpful in this context, since it made me think the problem is a messed up classpath. But the real reason was in the previous log entry (an UnsupportedClassVersionError). Either the view should show the relevant error, or it should contain a link to the Error Log, such that users are aware that other log entries could be relevant for this problem. Error 2005-06-20 14:17:58.20 Unable to create view ID org.eclipse.jdt.jeview.views.JavaElementView: Plug-in org.eclipse.jdt.jeview was unable to load class org.eclipse.jdt.jeview.views.JavaElementView. java.lang.ClassNotFoundException: org.eclipse.jdt.jeview.views.JavaElementView at org.eclipse.osgi.framework.internal.core.BundleLoader.findClass(BundleLoader.java:403) at org.eclipse.osgi.framework.internal.core.BundleLoader.findClass(BundleLoader.java:350) at org.eclipse.osgi.framework.adaptor.core.AbstractClassLoader.loadClass(AbstractClassLoader.java:78) at java.lang.ClassLoader.loadClass(ClassLoader.java:560) at org.eclipse.osgi.framework.internal.core.BundleLoader.loadClass(BundleLoader.java:275) at org.eclipse.osgi.framework.internal.core.BundleHost.loadClass(BundleHost.java:227) at org.eclipse.osgi.framework.internal.core.AbstractBundle.loadClass(AbstractBundle.java:1259) at org.eclipse.core.internal.registry.ConfigurationElement.createExecutableExtension(ConfigurationElement.java:152) at org.eclipse.core.internal.registry.ConfigurationElement.createExecutableExtension(ConfigurationElement.java:142) at org.eclipse.core.internal.registry.ConfigurationElement.createExecutableExtension(ConfigurationElement.java:129) at org.eclipse.core.internal.registry.ConfigurationElementHandle.createExecutableExtension(ConfigurationElementHandle.java:48) at org.eclipse.ui.internal.WorkbenchPlugin$1.run(WorkbenchPlugin.java:240) at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:69) at org.eclipse.ui.internal.WorkbenchPlugin.createExtension(WorkbenchPlugin.java:236) at org.eclipse.ui.internal.registry.ViewDescriptor.createView(ViewDescriptor.java:99) at org.eclipse.ui.internal.ViewReference.createPartHelper(ViewReference.java:267) at org.eclipse.ui.internal.ViewReference.createPart(ViewReference.java:180) at org.eclipse.ui.internal.WorkbenchPartReference.getPart(WorkbenchPartReference.java:552) at org.eclipse.ui.internal.Perspective.showView(Perspective.java:1655) at org.eclipse.ui.internal.WorkbenchPage.busyShowView(WorkbenchPage.java:930) at org.eclipse.ui.internal.WorkbenchPage.access$12(WorkbenchPage.java:913) at org.eclipse.ui.internal.WorkbenchPage$13.run(WorkbenchPage.java:3144) at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:69) at org.eclipse.ui.internal.WorkbenchPage.showView(WorkbenchPage.java:3141) at org.eclipse.ui.internal.WorkbenchPage.showView(WorkbenchPage.java:3119) at org.eclipse.ui.internal.registry.ShowViewHandler.execute(ShowViewHandler.java:58) at org.eclipse.core.commands.Command.execute(Command.java:311) at org.eclipse.core.commands.ParameterizedCommand.execute(ParameterizedCommand.java:396) at org.eclipse.ui.internal.keys.WorkbenchKeyboard.executeCommand(WorkbenchKeyboard.java:459) at org.eclipse.ui.internal.keys.WorkbenchKeyboard.press(WorkbenchKeyboard.java:781) at org.eclipse.ui.internal.keys.WorkbenchKeyboard.processKeyEvent(WorkbenchKeyboard.java:828) at org.eclipse.ui.internal.keys.WorkbenchKeyboard.filterKeySequenceBindings(WorkbenchKeyboard.java:550) at org.eclipse.ui.internal.keys.WorkbenchKeyboard.access$3(WorkbenchKeyboard.java:493) at org.eclipse.ui.internal.keys.WorkbenchKeyboard$KeyDownFilter.handleEvent(WorkbenchKeyboard.java:117) at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:66) at org.eclipse.swt.widgets.Display.filterEvent(Display.java:910) at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:843) at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:868) at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:853) at org.eclipse.swt.widgets.Widget.sendKeyEvent(Widget.java:881) at org.eclipse.swt.widgets.Widget.sendKeyEvent(Widget.java:877) at org.eclipse.swt.widgets.Widget.wmChar(Widget.java:1189) at org.eclipse.swt.widgets.Control.WM_CHAR(Control.java:3134) at org.eclipse.swt.widgets.Tree.WM_CHAR(Tree.java:2431) at org.eclipse.swt.widgets.Control.windowProc(Control.java:3037) at org.eclipse.swt.widgets.Tree.windowProc(Tree.java:2391) at org.eclipse.swt.widgets.Display.windowProc(Display.java:3694) at org.eclipse.swt.internal.win32.OS.DispatchMessageW(Native Method) at org.eclipse.swt.internal.win32.OS.DispatchMessage(OS.java:1656) at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:2701) at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.java:1699) at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:1663) at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:367) at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:143) at org.eclipse.ui.internal.ide.IDEApplication.run(IDEApplication.java:103) at org.eclipse.core.internal.runtime.PlatformActivator$1.run(PlatformActivator.java:226) at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:376) at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:163) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:85) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:58) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:60) at java.lang.reflect.Method.invoke(Method.java:391) at org.eclipse.core.launcher.Main.invokeFramework(Main.java:334) at org.eclipse.core.launcher.Main.basicRun(Main.java:278) at org.eclipse.core.launcher.Main.run(Main.java:973) at org.eclipse.core.launcher.Main.main(Main.java:948) ============================================================================== Error 2005-06-20 14:17:57.510 An error occurred while automatically activating bundle org.eclipse.jdt.jeview (40). org.osgi.framework.BundleException: The activator org.eclipse.jdt.jeview.JEViewPlugin for bundle org.eclipse.jdt.jeview is invalid at org.eclipse.osgi.framework.internal.core.AbstractBundle.loadBundleActivator(AbstractBundle.java:151) at org.eclipse.osgi.framework.internal.core.BundleContextImpl.start(BundleContextImpl.java:965) at org.eclipse.osgi.framework.internal.core.BundleHost.startWorker(BundleHost.java:321) at org.eclipse.osgi.framework.internal.core.AbstractBundle.start(AbstractBundle.java:266) at org.eclipse.core.runtime.adaptor.EclipseClassLoader.findLocalClass(EclipseClassLoader.java:116) at org.eclipse.osgi.framework.internal.core.BundleLoader.findLocalClass(BundleLoader.java:337) at org.eclipse.osgi.framework.internal.core.BundleLoader.findClass(BundleLoader.java:389) at org.eclipse.osgi.framework.internal.core.BundleLoader.findClass(BundleLoader.java:350) at org.eclipse.osgi.framework.adaptor.core.AbstractClassLoader.loadClass(AbstractClassLoader.java:78) at java.lang.ClassLoader.loadClass(ClassLoader.java:560) at org.eclipse.osgi.framework.internal.core.BundleLoader.loadClass(BundleLoader.java:275) at org.eclipse.osgi.framework.internal.core.BundleHost.loadClass(BundleHost.java:227) at org.eclipse.osgi.framework.internal.core.AbstractBundle.loadClass(AbstractBundle.java:1259) at org.eclipse.core.internal.registry.ConfigurationElement.createExecutableExtension(ConfigurationElement.java:152) at org.eclipse.core.internal.registry.ConfigurationElement.createExecutableExtension(ConfigurationElement.java:142) at org.eclipse.core.internal.registry.ConfigurationElement.createExecutableExtension(ConfigurationElement.java:129) at org.eclipse.core.internal.registry.ConfigurationElementHandle.createExecutableExtension(ConfigurationElementHandle.java:48) at org.eclipse.ui.internal.WorkbenchPlugin$1.run(WorkbenchPlugin.java:240) at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:69) at org.eclipse.ui.internal.WorkbenchPlugin.createExtension(WorkbenchPlugin.java:236) at org.eclipse.ui.internal.registry.ViewDescriptor.createView(ViewDescriptor.java:99) at org.eclipse.ui.internal.ViewReference.createPartHelper(ViewReference.java:267) at org.eclipse.ui.internal.ViewReference.createPart(ViewReference.java:180) at org.eclipse.ui.internal.WorkbenchPartReference.getPart(WorkbenchPartReference.java:552) at org.eclipse.ui.internal.Perspective.showView(Perspective.java:1655) at org.eclipse.ui.internal.WorkbenchPage.busyShowView(WorkbenchPage.java:930) at org.eclipse.ui.internal.WorkbenchPage.access$12(WorkbenchPage.java:913) at org.eclipse.ui.internal.WorkbenchPage$13.run(WorkbenchPage.java:3144) at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:69) at org.eclipse.ui.internal.WorkbenchPage.showView(WorkbenchPage.java:3141) at org.eclipse.ui.internal.WorkbenchPage.showView(WorkbenchPage.java:3119) at org.eclipse.ui.internal.registry.ShowViewHandler.execute(ShowViewHandler.java:58) at org.eclipse.core.commands.Command.execute(Command.java:311) at org.eclipse.core.commands.ParameterizedCommand.execute(ParameterizedCommand.java:396) at org.eclipse.ui.internal.keys.WorkbenchKeyboard.executeCommand(WorkbenchKeyboard.java:459) at org.eclipse.ui.internal.keys.WorkbenchKeyboard.press(WorkbenchKeyboard.java:781) at org.eclipse.ui.internal.keys.WorkbenchKeyboard.processKeyEvent(WorkbenchKeyboard.java:828) at org.eclipse.ui.internal.keys.WorkbenchKeyboard.filterKeySequenceBindings(WorkbenchKeyboard.java:550) at org.eclipse.ui.internal.keys.WorkbenchKeyboard.access$3(WorkbenchKeyboard.java:493) at org.eclipse.ui.internal.keys.WorkbenchKeyboard$KeyDownFilter.handleEvent(WorkbenchKeyboard.java:117) at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:66) at org.eclipse.swt.widgets.Display.filterEvent(Display.java:910) at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:843) at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:868) at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:853) at org.eclipse.swt.widgets.Widget.sendKeyEvent(Widget.java:881) at org.eclipse.swt.widgets.Widget.sendKeyEvent(Widget.java:877) at org.eclipse.swt.widgets.Widget.wmChar(Widget.java:1189) at org.eclipse.swt.widgets.Control.WM_CHAR(Control.java:3134) at org.eclipse.swt.widgets.Tree.WM_CHAR(Tree.java:2431) at org.eclipse.swt.widgets.Control.windowProc(Control.java:3037) at org.eclipse.swt.widgets.Tree.windowProc(Tree.java:2391) at org.eclipse.swt.widgets.Display.windowProc(Display.java:3694) at org.eclipse.swt.internal.win32.OS.DispatchMessageW(Native Method) at org.eclipse.swt.internal.win32.OS.DispatchMessage(OS.java:1656) at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:2701) at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.java:1699) at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:1663) at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:367) at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:143) at org.eclipse.ui.internal.ide.IDEApplication.run(IDEApplication.java:103) at org.eclipse.core.internal.runtime.PlatformActivator$1.run(PlatformActivator.java:226) at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:376) at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:163) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:85) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:58) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:60) at java.lang.reflect.Method.invoke(Method.java:391) at org.eclipse.core.launcher.Main.invokeFramework(Main.java:334) at org.eclipse.core.launcher.Main.basicRun(Main.java:278) at org.eclipse.core.launcher.Main.run(Main.java:973) at org.eclipse.core.launcher.Main.main(Main.java:948) Caused by: java.lang.UnsupportedClassVersionError: (org/eclipse/jdt/jeview/JEViewPlugin) bad major version at offset=6 at java.lang.ClassLoader.defineClassImpl(Native Method) at java.lang.ClassLoader.defineClass(ClassLoader.java:211) at org.eclipse.osgi.framework.adaptor.core.DefaultClassLoader.defineClass(DefaultClassLoader.java:370) at org.eclipse.core.runtime.adaptor.EclipseClassLoader.defineClass(EclipseClassLoader.java:227) at org.eclipse.osgi.framework.adaptor.core.DefaultClassLoader.findClassImpl(DefaultClassLoader.java:343) at org.eclipse.osgi.framework.adaptor.core.DefaultClassLoader.findClass(DefaultClassLoader.java:235) at org.eclipse.osgi.framework.adaptor.core.AbstractClassLoader.findLocalClass(AbstractClassLoader.java:183) at org.eclipse.core.runtime.adaptor.EclipseClassLoader.basicFindLocalClass(EclipseClassLoader.java:141) at org.eclipse.core.runtime.adaptor.EclipseClassLoader.findLocalClass(EclipseClassLoader.java:82) at org.eclipse.osgi.framework.internal.core.BundleLoader.findLocalClass(BundleLoader.java:337) at org.eclipse.osgi.framework.internal.core.BundleLoader.findClass(BundleLoader.java:389) at org.eclipse.osgi.framework.internal.core.BundleLoader.findClass(BundleLoader.java:350) at org.eclipse.osgi.framework.adaptor.core.AbstractClassLoader.loadClass(AbstractClassLoader.java:78) at java.lang.ClassLoader.loadClass(ClassLoader.java:560) at org.eclipse.osgi.framework.internal.core.BundleLoader.loadClass(BundleLoader.java:275) at org.eclipse.osgi.framework.internal.core.BundleHost.loadClass(BundleHost.java:227) at org.eclipse.osgi.framework.internal.core.AbstractBundle.loadBundleActivator(AbstractBundle.java:144) at org.eclipse.osgi.framework.internal.core.BundleContextImpl.start(BundleContextImpl.java:965) at org.eclipse.osgi.framework.internal.core.BundleHost.startWorker(BundleHost.java:321) at org.eclipse.osgi.framework.internal.core.AbstractBundle.start(AbstractBundle.java:266) at org.eclipse.core.runtime.adaptor.EclipseClassLoader.findLocalClass(EclipseClassLoader.java:116) at org.eclipse.osgi.framework.internal.core.BundleLoader.findLocalClass(BundleLoader.java:337) at org.eclipse.osgi.framework.internal.core.BundleLoader.findClass(BundleLoader.java:389) at org.eclipse.osgi.framework.internal.core.BundleLoader.findClass(BundleLoader.java:350) at org.eclipse.osgi.framework.adaptor.core.AbstractClassLoader.loadClass(AbstractClassLoader.java:78) at java.lang.ClassLoader.loadClass(ClassLoader.java:560) at org.eclipse.osgi.framework.internal.core.BundleLoader.loadClass(BundleLoader.java:275) at org.eclipse.osgi.framework.internal.core.BundleHost.loadClass(BundleHost.java:227) at org.eclipse.osgi.framework.internal.core.AbstractBundle.loadClass(AbstractBundle.java:1259) at org.eclipse.core.internal.registry.ConfigurationElement.createExecutableExtension(ConfigurationElement.java:152) at org.eclipse.core.internal.registry.ConfigurationElement.createExecutableExtension(ConfigurationElement.java:142) at org.eclipse.core.internal.registry.ConfigurationElement.createExecutableExtension(ConfigurationElement.java:129) at org.eclipse.core.internal.registry.ConfigurationElementHandle.createExecutableExtension(ConfigurationElementHandle.java:48) at org.eclipse.ui.internal.WorkbenchPlugin$1.run(WorkbenchPlugin.java:240) at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:69) at org.eclipse.ui.internal.WorkbenchPlugin.createExtension(WorkbenchPlugin.java:236) at org.eclipse.ui.internal.registry.ViewDescriptor.createView(ViewDescriptor.java:99) at org.eclipse.ui.internal.ViewReference.createPartHelper(ViewReference.java:267) at org.eclipse.ui.internal.ViewReference.createPart(ViewReference.java:180) at org.eclipse.ui.internal.WorkbenchPartReference.getPart(WorkbenchPartReference.java:552) at org.eclipse.ui.internal.Perspective.showView(Perspective.java:1655) at org.eclipse.ui.internal.WorkbenchPage.busyShowView(WorkbenchPage.java:930) at org.eclipse.ui.internal.WorkbenchPage.access$12(WorkbenchPage.java:913) at org.eclipse.ui.internal.WorkbenchPage$13.run(WorkbenchPage.java:3144) at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:69) at org.eclipse.ui.internal.WorkbenchPage.showView(WorkbenchPage.java:3141) at org.eclipse.ui.internal.WorkbenchPage.showView(WorkbenchPage.java:3119) at org.eclipse.ui.internal.registry.ShowViewHandler.execute(ShowViewHandler.java:58) at org.eclipse.core.commands.Command.execute(Command.java:311) at org.eclipse.core.commands.ParameterizedCommand.execute(ParameterizedCommand.java:396) at org.eclipse.ui.internal.keys.WorkbenchKeyboard.executeCommand(WorkbenchKeyboard.java:459) at org.eclipse.ui.internal.keys.WorkbenchKeyboard.press(WorkbenchKeyboard.java:781) at org.eclipse.ui.internal.keys.WorkbenchKeyboard.processKeyEvent(WorkbenchKeyboard.java:828) at org.eclipse.ui.internal.keys.WorkbenchKeyboard.filterKeySequenceBindings(WorkbenchKeyboard.java:550) at org.eclipse.ui.internal.keys.WorkbenchKeyboard.access$3(WorkbenchKeyboard.java:493) at org.eclipse.ui.internal.keys.WorkbenchKeyboard$KeyDownFilter.handleEvent(WorkbenchKeyboard.java:117) at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:66) at org.eclipse.swt.widgets.Display.filterEvent(Display.java:910) at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:843) at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:868) at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:853) at org.eclipse.swt.widgets.Widget.sendKeyEvent(Widget.java:881) at org.eclipse.swt.widgets.Widget.sendKeyEvent(Widget.java:877) at org.eclipse.swt.widgets.Widget.wmChar(Widget.java:1189) at org.eclipse.swt.widgets.Control.WM_CHAR(Control.java:3134) at org.eclipse.swt.widgets.Tree.WM_CHAR(Tree.java:2431) at org.eclipse.swt.widgets.Control.windowProc(Control.java:3037) at org.eclipse.swt.widgets.Tree.windowProc(Tree.java:2391) at org.eclipse.swt.widgets.Display.windowProc(Display.java:3694) at org.eclipse.swt.internal.win32.OS.DispatchMessageW(Native Method) at org.eclipse.swt.internal.win32.OS.DispatchMessage(OS.java:1656) at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:2701) at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.java:1699) at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:1663) at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:367) at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:143) at org.eclipse.ui.internal.ide.IDEApplication.run(IDEApplication.java:103) at org.eclipse.core.internal.runtime.PlatformActivator$1.run(PlatformActivator.java:226) at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:376) at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:163) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:85) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:58) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:60) at java.lang.reflect.Method.invoke(Method.java:391) at org.eclipse.core.launcher.Main.invokeFramework(Main.java:334) at org.eclipse.core.launcher.Main.basicRun(Main.java:278) at org.eclipse.core.launcher.Main.run(Main.java:973) at org.eclipse.core.launcher.Main.main(Main.java:948)

Files changed in fix:
bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/WorkbenchMessages.java bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/part/StatusPart.java