Bug 215959 - [WorkbenchParts] Error while running tomcat server
Summary: [WorkbenchParts] Error while running tomcat server
Status: NEW
Alias: None
Product: Platform
Classification: Eclipse Project
Component: UI (show other bugs)
Version: 3.3.1   Edit
Hardware: PC Linux
: P3 normal (vote)
Target Milestone: ---   Edit
Assignee: Platform UI Triaged CLA
QA Contact:
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2008-01-21 05:30 EST by Robert Munteanu CLA
Modified: 2019-09-06 15:38 EDT (History)
5 users (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Robert Munteanu CLA 2008-01-21 05:30:01 EST
Whenever the tomcat server needs to write to the console, an error dialog appears, with the text 'Error'. The following error is found in the error log.

The other uses of console are not affected.

-- Error Log --
Date: Fri Jan 18 18:05:25 EET 2008
Message: An unexpected exception was thrown.
Severity: Error
Plugin ID: org.eclipse.ui.workbench
Stack Trace:
java.lang.NullPointerException
at org.eclipse.ui.part.PageBookView.removePage(PageBookView.java:826)
at org.eclipse.ui.part.PageBookView.dispose(PageBookView.java:506)
at org.eclipse.ui.internal.console.ConsoleView.dispose(ConsoleView.java:336)
at org.eclipse.ui.internal.WorkbenchPartReference.doDisposePart(WorkbenchPartReference.java:720)
at org.eclipse.ui.internal.ViewReference.doDisposePart(ViewReference.java:127)
at org.eclipse.ui.internal.WorkbenchPartReference.dispose(WorkbenchPartReference.java:671)
at org.eclipse.ui.internal.WorkbenchPage$6.run(WorkbenchPage.java:1693)
at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:37)
at org.eclipse.core.runtime.Platform.run(Platform.java:857)
at org.eclipse.ui.internal.WorkbenchPage.dispose(WorkbenchPage.java:1688)
at org.eclipse.ui.internal.WorkbenchWindow.closeAllPages(WorkbenchWindow.java:825)
at org.eclipse.ui.internal.WorkbenchWindow.hardClose(WorkbenchWindow.java:1559)
at org.eclipse.ui.internal.WorkbenchWindow.busyClose(WorkbenchWindow.java:699)
at org.eclipse.ui.internal.WorkbenchWindow.access$0(WorkbenchWindow.java:675)
at org.eclipse.ui.internal.WorkbenchWindow$2.run(WorkbenchWindow.java:790)
at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:67)
at org.eclipse.ui.internal.WorkbenchWindow.close(WorkbenchWindow.java:788)
at org.eclipse.jface.window.WindowManager.close(WindowManager.java:109)
at org.eclipse.ui.internal.Workbench$15.run(Workbench.java:908)
at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:37)
at org.eclipse.ui.internal.Workbench.busyClose(Workbench.java:905)
at org.eclipse.ui.internal.Workbench.access$15(Workbench.java:834)
at org.eclipse.ui.internal.Workbench$22.run(Workbench.java:1078)
at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:67)
at org.eclipse.ui.internal.Workbench.close(Workbench.java:1076)
at org.eclipse.ui.internal.Workbench.close(Workbench.java:1048)
at org.eclipse.ui.internal.WorkbenchWindow.busyClose(WorkbenchWindow.java:696)
at org.eclipse.ui.internal.WorkbenchWindow.access$0(WorkbenchWindow.java:675)
at org.eclipse.ui.internal.WorkbenchWindow$2.run(WorkbenchWindow.java:790)
at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:67)
at org.eclipse.ui.internal.WorkbenchWindow.close(WorkbenchWindow.java:788)
at org.eclipse.jface.window.Window.handleShellCloseEvent(Window.java:736)
at org.eclipse.jface.window.Window$3.shellClosed(Window.java:682)
at org.eclipse.swt.widgets.TypedListener.handleEvent(TypedListener.java:91)
at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:66)
at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1101)
at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1125)
at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1110)
at org.eclipse.swt.widgets.Shell.closeWidget(Shell.java:542)
at org.eclipse.swt.widgets.Shell.gtk_delete_event(Shell.java:922)
at org.eclipse.swt.widgets.Widget.windowProc(Widget.java:1478)
at org.eclipse.swt.widgets.Control.windowProc(Control.java:4234)
at org.eclipse.swt.widgets.Display.windowProc(Display.java:3973)
at org.eclipse.swt.internal.gtk.OS._gtk_main_do_event(Native Method)
at org.eclipse.swt.internal.gtk.OS.gtk_main_do_event(OS.java:5593)
at org.eclipse.swt.widgets.Display.eventProc(Display.java:1192)
at org.eclipse.swt.internal.gtk.OS._g_main_context_iteration(Native Method)
at org.eclipse.swt.internal.gtk.OS.g_main_context_iteration(OS.java:1487)
at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:2969)
at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.java:2389)
at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:2353)
at org.eclipse.ui.internal.Workbench.access$4(Workbench.java:2219)
at org.eclipse.ui.internal.Workbench$4.run(Workbench.java:466)
at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:289)
at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:461)
at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:149)
at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:106)
at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:169)
at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:106)
at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:76)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:363)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:176)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:45)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:612)
at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:508)
at org.eclipse.equinox.launcher.Main.basicRun(Main.java:447)
at org.eclipse.equinox.launcher.Main.run(Main.java:1173)
at org.eclipse.equinox.launcher.Main.main(Main.java:1148)
Comment 1 Carl Anderson CLA 2008-01-21 09:27:25 EST
Assigning it to the server team for an initial triage.

Robert- what version of WTP are you using?
Comment 2 Robert Munteanu CLA 2008-01-21 09:33:11 EST
I get the following information from Help -> About -> Feature details

Web Standard Tools - Server Core

Version: 2.0.1.v200709110637-2-CM8s733G3G5Jc
Build id: 20070926042742
Comment 3 Tim deBoer CLA 2008-01-21 09:42:45 EST
Appears to be a Platform UI issue, transferring bugzilla. Please feel free to pass back to WTP's jst.server if there is any reason to believe this is Tomcat related.
Comment 4 Paul Webster CLA 2008-01-21 10:44:32 EST
Tim, this is a workbench window close event ... would anything to do with the tomcat debug console be causing that?

How is tomcat opening/closing its console (or is it just a launched process)?  Comments, Debug?

PW
Comment 5 Tim deBoer CLA 2008-01-21 10:49:27 EST
Hi Paul,
It's just a regular launched process, extending the Java launch delegate. Sorry, forgot Console is from Debug team.
Comment 6 Michael Rennie CLA 2008-01-21 11:12:10 EST
this is the result of ConsoleView making a call to super.dispose() from our dispose method. 

I did notice that the code in PageView does a map lookup/call all at once where the stack trace indicates the NPE is coming from.

--> int newCount = ((Integer) mapPageToNumRecs.get(rec.page)).intValue() - 1;

Moving back to platform ui. Paul, is it common to have a map lookup in this case return null? Are we somehow removing a console page when we shouldn't be that causes this lookup to fail?
Comment 7 Paul Webster CLA 2008-01-21 12:20:35 EST
(In reply to comment #6)
> 
> --> int newCount = ((Integer) mapPageToNumRecs.get(rec.page)).intValue() - 1;
> 
> Moving back to platform ui. Paul, is it common to have a map lookup in this
> case return null? Are we somehow removing a console page when we shouldn't be
> that causes this lookup to fail?

Yeah, I had a look at this on the way through ... I was wondering if the console view did any early dispose of the part or page that's of interest.  Console shouldn't be able to effect these internal structures deliberately, they all appear to be private to PageBookView.

I'll have to have a closer look.

PW

Comment 8 Eclipse Webmaster CLA 2019-09-06 15:38:23 EDT
This bug hasn't had any activity in quite some time. Maybe the problem got resolved, was a duplicate of something else, or became less pressing for some reason - or maybe it's still relevant but just hasn't been looked at yet.

If you have further information on the current state of the bug, please add it. The information can be, for example, that the problem still occurs, that you still want the feature, that more information is needed, or that the bug is (for whatever reason) no longer relevant.