JDK-6542395 : Regression:TabbedPane with SCROLL_TAB_LAYOUT throws NPE exception with gtk look and feel.
  • Type: Bug
  • Component: client-libs
  • Sub-Component: javax.swing
  • Affected Version: 6u2
  • Priority: P1
  • Status: Closed
  • Resolution: Duplicate
  • OS: solaris
  • CPU: sparc
  • Submitted: 2007-04-04
  • Updated: 2011-02-16
  • Resolved: 2007-04-04
Related Reports
Duplicate :  
Description
Bug Info:
=========
TabbedPane with SCROLL_TAB_LAYOUT is not launching with gtk look and feel and it throws the NPE exception.

It causes the regression because one of the fix(6292725) in 6u2 b01.

Please find the attached java file and try to run the application with GTK look and feel.

Exception:
==========
Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException
        at com.sun.java.swing.plaf.gtk.GTKStyle.get(GTKStyle.java:756)
        at javax.swing.plaf.synth.SynthStyle.getInt(SynthStyle.java:952)
        at javax.swing.plaf.synth.SynthArrowButton$SynthArrowButtonUI.getPreferredSize(SynthArrowButton.java:95)
        at javax.swing.JComponent.getPreferredSize(JComponent.java:1632)
        at javax.swing.plaf.basic.BasicTabbedPaneUI$TabbedPaneScrollLayout.layoutContainer(BasicTabbedPaneUI.java:3042)
        at java.awt.Container.layout(Container.java:1432)
        at java.awt.Container.doLayout(Container.java:1421)
        at java.awt.Container.validateTree(Container.java:1519)
        at java.awt.Container.validateTree(Container.java:1526)
        at java.awt.Container.validateTree(Container.java:1526)
        at java.awt.Container.validateTree(Container.java:1526)
        at java.awt.Container.validateTree(Container.java:1526)
        at java.awt.Container.validate(Container.java:1491)
        at java.awt.Window.pack(Window.java:674)
        at JTabbedPaneSample.initComponents(JTabbedPaneSample.java:55)
        at JTabbedPaneSample.<init>(JTabbedPaneSample.java:15)
        at JTabbedPaneSample$1.run(JTabbedPaneSample.java:69)
        at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:209)
        at java.awt.EventQueue.dispatchEvent(EventQueue.java:597)
        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)
Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException
        at com.sun.java.swing.plaf.gtk.GTKStyle.get(GTKStyle.java:756)
        at javax.swing.plaf.synth.SynthStyle.getInt(SynthStyle.java:952)
        at javax.swing.plaf.synth.SynthArrowButton$SynthArrowButtonUI.getPreferredSize(SynthArrowButton.java:95)
        at javax.swing.JComponent.getPreferredSize(JComponent.java:1632)
        at javax.swing.plaf.basic.BasicTabbedPaneUI$TabbedPaneScrollLayout.layoutContainer(BasicTabbedPaneUI.java:3042)
        at java.awt.Container.layout(Container.java:1432)
        at java.awt.Container.doLayout(Container.java:1421)
        at java.awt.Container.validateTree(Container.java:1519)
        at java.awt.Container.validateTree(Container.java:1526)
        at java.awt.Container.validateTree(Container.java:1526)
        at java.awt.Container.validateTree(Container.java:1526)
        at java.awt.Container.validateTree(Container.java:1526)
        at java.awt.Container.validate(Container.java:1491)
        at java.awt.Window.dispatchEventImpl(Window.java:2427)
        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)

Comments
EVALUATION There was a special fix for the issue in jdk 7 which we forgot to backport. I close this one as a duplicate of 6494398 and create an MR of 6494398 for backporting it into 6u2.
04-04-2007

EVALUATION There is a lost comparing component name to null. The fix is very simple.
04-04-2007