error when refreshing ports


#1

eclipse.buildId=M20100909-0800
java.version=1.6.0_22
java.vendor=Sun Microsystems Inc.
BootLoader constants: OS=linux, ARCH=x86_64, WS=gtk, NL=it_IT
Framework arguments: -product org.eclipse.epp.package.jee.product
Command-line arguments: -os linux -ws gtk -arch x86_64 -product org.eclipse.epp.package.jee.product

java.lang.NullPointerException
at com.swi.tm.model.targetmanagement.impl.ComputerPortImpl.removeAtListener(ComputerPortImpl.java:692)
at com.swi.tm.ui.console.TMConsole.unregisterTargetListeners(TMConsole.java:210)
at com.swi.tm.ui.console.TMConsole.dispose(TMConsole.java:255)
at org.eclipse.ui.console.AbstractConsole.destroy(AbstractConsole.java:281)
at org.eclipse.ui.console.AbstractConsole$Lifecycle.consolesRemoved(AbstractConsole.java:78)
at org.eclipse.ui.internal.console.ConsoleManager$ConsoleNotifier.run(ConsoleManager.java:155)
at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42)
at org.eclipse.ui.internal.console.ConsoleManager$ConsoleNotifier.notify(ConsoleManager.java:175)
at org.eclipse.ui.internal.console.ConsoleManager.fireUpdate(ConsoleManager.java:269)
at org.eclipse.ui.internal.console.ConsoleManager.removeConsoles(ConsoleManager.java:249)
at com.swi.tm.ui.console.TMConsoleManager$2.portRemoved(TMConsoleManager.java:91)
at com.swi.tm.model.listeners.PortListModificationListener.notifyChanged(PortListModificationListener.java:44)
at org.eclipse.emf.common.notify.impl.BasicNotifierImpl.eNotify(BasicNotifierImpl.java:380)
at org.eclipse.emf.ecore.util.EcoreEList.dispatchNotification(EcoreEList.java:255)
at org.eclipse.emf.common.notify.impl.NotifyingListImpl.removeAll(NotifyingListImpl.java:955)
at org.eclipse.emf.common.util.BasicEMap.removeAll(BasicEMap.java:1678)
at com.swi.tm.model.controller.internal.PortListManager.updateComputerPortList(PortListManager.java:90)
at com.swi.tm.model.targetmanagement.impl.TargetManagerImpl.requestRefresh(TargetManagerImpl.java:115)
at com.swi.tm.ui.devices.actions.OpenClosePortActionGroup$1.run(OpenClosePortActionGroup.java:40)
at org.eclipse.jface.action.Action.runWithEvent(Action.java:498)
at org.eclipse.jface.action.ActionContributionItem.handleWidgetSelection(ActionContributionItem.java:584)
at org.eclipse.jface.action.ActionContributionItem.access$2(ActionContributionItem.java:501)
at org.eclipse.jface.action.ActionContributionItem$6.handleEvent(ActionContributionItem.java:452)
at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:84)
at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1258)
at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:3540)
at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3161)
at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.java:2640)
at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:2604)
at org.eclipse.ui.internal.Workbench.access$4(Workbench.java:2438)
at org.eclipse.ui.internal.Workbench$7.run(Workbench.java:671)
at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332)
at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:664)
at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:149)
at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:115)
at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:196)
at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:110)
at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:79)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:369)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:179)
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:597)
at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:619)
at org.eclipse.equinox.launcher.Main.basicRun(Main.java:574)
at org.eclipse.equinox.launcher.Main.run(Main.java:1407)
at org.eclipse.equinox.launcher.Main.main(Main.java:1383)

java.lang.NullPointerException
at com.swi.tm.model.targetmanagement.impl.ComputerPortImpl.removeAtListener(ComputerPortImpl.java:692)
at com.swi.tm.ui.console.TMConsole.unregisterTargetListeners(TMConsole.java:210)
at com.swi.tm.ui.console.TMConsole.dispose(TMConsole.java:255)
at org.eclipse.ui.console.AbstractConsole.destroy(AbstractConsole.java:281)
at org.eclipse.ui.console.AbstractConsole$Lifecycle.consolesRemoved(AbstractConsole.java:78)
at org.eclipse.ui.internal.console.ConsoleManager$ConsoleNotifier.run(ConsoleManager.java:155)
at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42)
at org.eclipse.ui.internal.console.ConsoleManager$ConsoleNotifier.notify(ConsoleManager.java:175)
at org.eclipse.ui.internal.console.ConsoleManager.fireUpdate(ConsoleManager.java:269)
at org.eclipse.ui.internal.console.ConsoleManager.removeConsoles(ConsoleManager.java:249)
at com.swi.tm.ui.console.TMConsoleManager$2.portRemoved(TMConsoleManager.java:91)
at com.swi.tm.model.listeners.PortListModificationListener.notifyChanged(PortListModificationListener.java:44)
at org.eclipse.emf.common.notify.impl.BasicNotifierImpl.eNotify(BasicNotifierImpl.java:380)
at org.eclipse.emf.ecore.util.EcoreEList.dispatchNotification(EcoreEList.java:255)
at org.eclipse.emf.common.notify.impl.NotifyingListImpl.removeAll(NotifyingListImpl.java:955)
at org.eclipse.emf.common.util.BasicEMap.removeAll(BasicEMap.java:1678)
at com.swi.tm.model.controller.internal.PortListManager.updateComputerPortList(PortListManager.java:90)
at com.swi.tm.model.targetmanagement.impl.TargetManagerImpl.requestRefresh(TargetManagerImpl.java:115)
at com.swi.tm.ui.devices.actions.OpenClosePortActionGroup$1.run(OpenClosePortActionGroup.java:40)
at org.eclipse.jface.action.Action.runWithEvent(Action.java:498)
at org.eclipse.jface.action.ActionContributionItem.handleWidgetSelection(ActionContributionItem.java:584)
at org.eclipse.jface.action.ActionContributionItem.access$2(ActionContributionItem.java:501)
at org.eclipse.jface.action.ActionContributionItem$6.handleEvent(ActionContributionItem.java:452)
at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:84)
at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1258)
at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:3540)
at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3161)
at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.java:2640)
at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:2604)
at org.eclipse.ui.internal.Workbench.access$4(Workbench.java:2438)
at org.eclipse.ui.internal.Workbench$7.run(Workbench.java:671)
at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332)
at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:664)
at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:149)
at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:115)
at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:196)
at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:110)
at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:79)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:369)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:179)
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:597)
at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:619)
at org.eclipse.equinox.launcher.Main.basicRun(Main.java:574)
at org.eclipse.equinox.launcher.Main.run(Main.java:1407)
at org.eclipse.equinox.launcher.Main.main(Main.java:1383)


#2

Please can you elaborate on the use case?
I suppose you were connected on at least one port + refresh ports list.
Do you reproduce it easily?


#3

I reproduced the error in this way:
attached a fastrack
pressed the connection button (it appears in the console port opened)
pressed refresh on ports -> appears first error and a port disappear
pressed refresh on ports again -> appears the error again and all ports disappear

on ubuntu 64


#4

Ok, thanks for the details: we’re going to have a look.


#5

the bug is still present with studio 2.0.0


#6

We’ve concentrated our effort on new debugging solution in 2.0.0, and didn’t take the time to look at this. However we’ve planned to allocate more time in the next release development to consider all the feedbacks reported here!