JDK-5009000 : Java2Demo throw exceptions on Mercury, QuickSilver
  • Type: Bug
  • Component: client-libs
  • Sub-Component: demo
  • Affected Version: 5.0
  • Priority: P2
  • Status: Closed
  • Resolution: Duplicate
  • OS: solaris
  • CPU: x86
  • Submitted: 2004-03-06
  • Updated: 2004-03-06
  • Resolved: 2004-03-06
Related Reports
Duplicate :  
Description
When running Java2Demo with 2D PIT, it threw java.lang.NullPointerException
pit build: /net/jcg-x86-01/export3/Java2DBuilds/2004-03-03.tiger.pit
platforms: Mercury, QuickSilver b06

Regressed with Beta2 b41, 40, 39, 38, 33, b32 all reproducible.
Harder to reproduce on b31, b30.

To reproduce: launch Java2Demo, then click on few tabs, then the exception happens.

i18n-gw700-9:/net/koori/onestop/jdk/1.5/promoted/beta2/b38/binaries/linux-i586/demo/jfc/Java2D # ../../../bin/java -jar Java2Demo.jar
java.lang.NullPointerException
        at java.awt.Dimension.<init>(Dimension.java:91)
        at java.awt.Component.getMaximumSize(Component.java:2325)
        at java.awt.Container.getMaximumSize(Container.java:1622)
        at javax.swing.JComponent.getMaximumSize(JComponent.java:1605)
        at javax.swing.BoxLayout.checkRequests(BoxLayout.java:435)
        at javax.swing.BoxLayout.layoutContainer(BoxLayout.java:375)
        at javax.swing.JToolBar$DefaultToolBarLayout.layoutContainer(JToolBar.java:786)
        at java.awt.Container.layout(Container.java:1398)
        at java.awt.Container.doLayout(Container.java:1388)
        at java.awt.Container.validateTree(Container.java:1470)
        at java.awt.Container.validateTree(Container.java:1477)
        at java.awt.Container.validateTree(Container.java:1477)
        at java.awt.Container.validateTree(Container.java:1477)
        at java.awt.Container.validateTree(Container.java:1477)
        at java.awt.Container.validateTree(Container.java:1477)
        at java.awt.Container.validate(Container.java:1445)
        at java2d.DemoGroup.setup(DemoGroup.java:257)
        at java2d.GlobalPanel.stateChanged(GlobalPanel.java:102)
        at javax.swing.JTabbedPane.fireStateChanged(JTabbedPane.java:283)
        at javax.swing.JTabbedPane$ModelListener.stateChanged(JTabbedPane.java:215)
        at javax.swing.DefaultSingleSelectionModel.fireStateChanged(DefaultSingleSelectionModel.java:116)
        at javax.swing.DefaultSingleSelectionModel.setSelectedIndex(DefaultSingleSelectionModel.java:50)
        at javax.swing.JTabbedPane.setSelectedIndexImpl(JTabbedPane.java:471)
        at javax.swing.JTabbedPane.setSelectedIndex(JTabbedPane.java:457)
        at javax.swing.plaf.basic.BasicTabbedPaneUI$Handler.mousePressed(BasicTabbedPaneUI.java:3192)
        at java.awt.Component.processMouseEvent(Component.java:5462)
        at javax.swing.JComponent.processMouseEvent(JComponent.java:3078)
        at java.awt.Component.processEvent(Component.java:5230)
        at java.awt.Container.processEvent(Container.java:1961)
        at java.awt.Component.dispatchEventImpl(Component.java:3933)
        at java.awt.Container.dispatchEventImpl(Container.java:2019)
        at java.awt.Component.dispatchEvent(Component.java:3781)
        at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4203)
        at java.awt.LightweightDispatcher.processMouseEvent(Container.java:3880)
        at java.awt.LightweightDispatcher.dispatchEvent(Container.java:3813)
        at java.awt.Container.dispatchEventImpl(Container.java:2005)
        at java.awt.Window.dispatchEventImpl(Window.java:1757)
        at java.awt.Component.dispatchEvent(Component.java:3781)
        at java.awt.EventQueue.dispatchEvent(EventQueue.java:463)
        at java.awt.EventDispatchThread.pumpOneEventForHierarchy(EventDispatchThread.java:234)
        at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:163)
        at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:157)
        at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:149)
        at java.awt.EventDispatchThread.run(EventDispatchThread.java:110)
java.lang.NullPointerException
        at javax.swing.SizeRequirements.calculateTiledPositions(SizeRequirements.java:294)
        at javax.swing.BoxLayout.layoutContainer(BoxLayout.java:378)
        at javax.swing.JToolBar$DefaultToolBarLayout.layoutContainer(JToolBar.java:786)
        at java.awt.Container.layout(Container.java:1398)
        at java.awt.Container.doLayout(Container.java:1388)
        at java.awt.Container.validateTree(Container.java:1470)
        at java.awt.Container.validateTree(Container.java:1477)
        at java.awt.Container.validateTree(Container.java:1477)
        at java.awt.Container.validateTree(Container.java:1477)
        at java.awt.Container.validateTree(Container.java:1477)
        at java.awt.Container.validateTree(Container.java:1477)
        at java.awt.Container.validateTree(Container.java:1477)
        at java.awt.Container.validateTree(Container.java:1477)
        at java.awt.Container.validateTree(Container.java:1477)
        at java.awt.Container.validateTree(Container.java:1477)
        at java.awt.Container.validateTree(Container.java:1477)
        at java.awt.Container.validateTree(Container.java:1477)
        at java.awt.Container.validate(Container.java:1445)
        at javax.swing.RepaintManager.validateInvalidComponents(RepaintManager.java:354)
        at javax.swing.SystemEventQueueUtilities$ComponentWorkRequest.run(SystemEventQueueUtilities.java:116)
        at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:201)
        at java.awt.EventQueue.dispatchEvent(EventQueue.java:461)
        at java.awt.EventDispatchThread.pumpOneEventForHierarchy(EventDispatchThread.java:234)
        at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:163)
        at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:157)
        at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:149)
        at java.awt.EventDispatchThread.run(EventDispatchThread.java:110)

Please change to appropriate category as needed.

Comments
EVALUATION Name: agR10216 Date: 03/06/2004 This is a duplicate of 4971236 (as well as 4965892 and 4984970). So there are (at least) 4 bugs on the same issue filed initially against different subcategories. Shouldn't the issue be fixed ASAP not to produce more duplicates? Note, changing a demo isn't a risky fix. Even if the AWT synchronization is fixed (under the bug 4988378), there may well be some threading problems because Swing isn't thread safe definitely. Why on earth should demo apps bundled with JDK violate rules of our own, stated in docs and tutorials? All demos should have been revised to follow Swing's "single-thread rule" strictly ages ago! Recategorizing to java/demo_2d. ###@###.### 2004-03-06 ====================================================================== This is a duplicate of 4971236. Please see the evaluation of 4971236 for more information. Fixing this issue is not possible for Tiger. ###@###.### 2004-03-06
06-03-2004