Ticket #103 (closed defect: moved)

Opened 13 years ago

Last modified 6 years ago

Exception when removing display

Reported by: sorber Owned by: curtis
Priority: minor Milestone: visbio3.50
Component: visbio Severity: serious
Keywords: exception visad Cc:
Blocked By: Blocking:

Description (last modified by curtis) (diff)

java.lang.NullPointerException
        at visad.DisplayImpl.doAction(DisplayImpl.java:1755)
        at visad.ActionImpl.run(ActionImpl.java:364)
        at visad.util.ThreadPool$ThreadMinnow.run(ThreadPool.java:95)

(just 3 lines)

To generate this exception:

  • Add the sdub dataset
  • Add a 2D or 3D display
  • Remove the sdub dataset
  • Remove the display

Change History

comment:1 Changed 13 years ago by curtis

  • Priority changed from major to minor
  • Status changed from new to assigned

I duplicated this problem by removing the display first (i.e., NOT removing the sdub dataset). And repeated adds and removals of sdub with various displays yielded:

Exception in thread "AWT-EventQueue-0" java.lang.RuntimeException: Assertion failure: java.lang.reflect.InvocationTargetException
	at visad.java3d.UniverseBuilderJ3D.destroy(UniverseBuilderJ3D.java:124)
	at visad.java3d.DisplayPanelJ3D.destroy(DisplayPanelJ3D.java:79)
	at visad.java3d.VisADCanvasJ3D.stop(VisADCanvasJ3D.java:415)
	at visad.java3d.DisplayRendererJ3D.destroy(DisplayRendererJ3D.java:157)
	at visad.java3d.DefaultDisplayRendererJ3D.destroy(DefaultDisplayRendererJ3D.java:99)
	at visad.java3d.DisplayImplJ3D.destroy(DisplayImplJ3D.java:719)
	at loci.visbio.view.DisplayWindow.discard(DisplayWindow.java:394)
	at loci.visbio.view.DisplayControls.removeDisplay(DisplayControls.java:157)
	at loci.visbio.view.DisplayManager.removeDisplay(DisplayManager.java:130)
	at loci.visbio.view.DisplayControls.actionPerformed(DisplayControls.java:189)
	at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:1995)
	at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2318)
	at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:387)
	at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:242)
	at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java:236)
	at java.awt.AWTEventMulticaster.mouseReleased(AWTEventMulticaster.java:272)
	at java.awt.Component.processMouseEvent(Component.java:6038)
	at javax.swing.JComponent.processMouseEvent(JComponent.java:3260)
	at java.awt.Component.processEvent(Component.java:5803)
	at java.awt.Container.processEvent(Container.java:2058)
	at java.awt.Component.dispatchEventImpl(Component.java:4410)
	at java.awt.Container.dispatchEventImpl(Container.java:2116)
	at java.awt.Component.dispatchEvent(Component.java:4240)
	at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4322)
	at java.awt.LightweightDispatcher.processMouseEvent(Container.java:3986)
	at java.awt.LightweightDispatcher.dispatchEvent(Container.java:3916)
	at java.awt.Container.dispatchEventImpl(Container.java:2102)
	at java.awt.Window.dispatchEventImpl(Window.java:2429)
	at java.awt.Component.dispatchEvent(Component.java:4240)
	at java.awt.EventQueue.dispatchEvent(EventQueue.java:599)
	at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:273)
	at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:183)
	at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:173)
	at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:168)
	at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:160)
	at java.awt.EventDispatchThread.run(EventDispatchThread.java:121)
loci.formats.ReflectException: Cannot execute method: renderField
	at loci.formats.ReflectedUniverse.exec(ReflectedUniverse.java:253)
	at loci.visbio.util.DisplayUtil.redrawMessages(DisplayUtil.java:465)
	at loci.visbio.view.TransformLink.doMessages(TransformLink.java:623)
	at loci.visbio.view.TransformLink.setMessage(TransformLink.java:187)
	at loci.visbio.view.StackLink.computeData(StackLink.java:559)
	at loci.visbio.view.TransformLink.run(TransformLink.java:322)
	at java.lang.Thread.run(Thread.java:619)
Caused by: java.lang.reflect.InvocationTargetException
	at sun.reflect.GeneratedMethodAccessor27.invoke(Unknown Source)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
	at java.lang.reflect.Method.invoke(Method.java:597)
	at loci.formats.ReflectedUniverse.exec(ReflectedUniverse.java:249)
	... 6 more
Caused by: java.lang.NullPointerException
	at visad.java3d.VisADCanvasJ3D.renderField(VisADCanvasJ3D.java:257)
	... 10 more

comment:2 Changed 13 years ago by curtis

  • Summary changed from Exception when removing display after removing associated data objects to Exception when removing display

comment:3 Changed 13 years ago by curtis

  • Milestone set to visbio3.5

Here is a stack trace with the latest version of VisBio:

Exception in thread "AWT-EventQueue-0" java.lang.RuntimeException: Assertion failure
  at visad.java3d.UniverseBuilderJ3D.destroy(UniverseBuilderJ3D.java:124)
  at visad.java3d.DisplayPanelJ3D.destroy(DisplayPanelJ3D.java:79)
  at visad.java3d.VisADCanvasJ3D.stop(VisADCanvasJ3D.java:415)
  at visad.java3d.DisplayRendererJ3D.destroy(DisplayRendererJ3D.java:157)
  at visad.java3d.TwoDDisplayRendererJ3D.destroy(TwoDDisplayRendererJ3D.java:84)
  at visad.java3d.DisplayImplJ3D.destroy(DisplayImplJ3D.java:719)
  at loci.visbio.view.DisplayWindow.discard(DisplayWindow.java:402)
  at loci.visbio.view.DisplayControls.removeDisplay(DisplayControls.java:163)
  at loci.visbio.view.DisplayManager.removeDisplay(DisplayManager.java:136)
  at loci.visbio.view.DisplayControls.actionPerformed(DisplayControls.java:195)
  at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:1995)
  at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2318)
  at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:387)
  at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:242)
  at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java:236)
  at java.awt.AWTEventMulticaster.mouseReleased(AWTEventMulticaster.java:272)
  at java.awt.Component.processMouseEvent(Component.java:6038)
  at javax.swing.JComponent.processMouseEvent(JComponent.java:3260)
  at java.awt.Component.processEvent(Component.java:5803)
  at java.awt.Container.processEvent(Container.java:2058)
  at java.awt.Component.dispatchEventImpl(Component.java:4410)
  at java.awt.Container.dispatchEventImpl(Container.java:2116)
  at java.awt.Component.dispatchEvent(Component.java:4240)
  at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4322)
  at java.awt.LightweightDispatcher.processMouseEvent(Container.java:3986)
  at java.awt.LightweightDispatcher.dispatchEvent(Container.java:3916)
  at java.awt.Container.dispatchEventImpl(Container.java:2102)
  at java.awt.Window.dispatchEventImpl(Window.java:2429)
  at java.awt.Component.dispatchEvent(Component.java:4240)
  at java.awt.EventQueue.dispatchEvent(EventQueue.java:599)
  at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:273)
  at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:183)
  at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:173)
  at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:168)
  at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:160)
  at java.awt.EventDispatchThread.run(EventDispatchThread.java:121)
Caused by: java.lang.reflect.InvocationTargetException
  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 visad.java3d.UniverseBuilderJ3D.destroy(UniverseBuilderJ3D.java:121)
  ... 35 more
Caused by: java.lang.NullPointerException
  at javax.media.j3d.NodeRetained.clearLive(NodeRetained.java:718)
  at javax.media.j3d.GroupRetained.clearLive(GroupRetained.java:2630)
  at javax.media.j3d.GroupRetained.clearLive(GroupRetained.java:2678)
  at javax.media.j3d.Locale.doRemoveBranchGraph(Locale.java:332)
  at javax.media.j3d.Locale.removeFromUniverse(Locale.java:301)
  at javax.media.j3d.VirtualUniverse.removeAllLocales(VirtualUniverse.java:336)
  ... 40 more

comment:4 Changed 12 years ago by curtis

  • Status changed from assigned to new
  • Description modified (diff)
  • Severity set to fatal

comment:5 Changed 12 years ago by curtis

  • Severity changed from fatal to serious

comment:6 Changed 6 years ago by curtis

  • Status changed from new to closed
  • Resolution set to moved
  • Description modified (diff)
Note: See TracTickets for help on using tickets.