Uploaded image for project: 'JDK'
  1. JDK
  2. JDK-7055065

Regression : JDK 7 : NullPointerException when sorting JTable with empty cell

    XMLWordPrintable

Details

    • Bug
    • Status: Resolved
    • P4
    • Resolution: Fixed
    • 7
    • 8
    • client-libs
    • b38
    • generic
    • generic

    Backports

      Description

        SYNOPSIS
        --------
        NullPointerException when sorting JTable with empty cell

        OPERATING SYSTEM
        ----------------
        Reported on RHEL5.1
        Reproducible on Windows.
        Likely platform independent.

        FULL JDK VERSION
        ----------------
        JDK 7 (tested with b144)
        Not reproducible with Java 6

        REPRODUCTION INSTRUCTIONS
        -------------------------
        1. Launch SwingSet2 with jar as follows:
            java -jar %JAVA_HOME%/demo/jfc/SwingSet2/SwingSet2.jar

        2. Click JTableDemo Tab and double click on a cell in the "Favorite
         Number" column and delete the value.

        3. Click on the column headers to sort the table.

        Expected result:
        No Exceptions should be thrown.

        Observed result:
        The following NullPointerException stack trace is printed on the console:

        Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException
              at javax.swing.JTable.columnMoved(JTable.java:4578)
              at javax.swing.table.DefaultTableColumnModel.fireColumnMoved(DefaultTableColumnModel.java:580)
              at javax.swing.table.DefaultTableColumnModel.moveColumn(DefaultTableColumnModel.java:190)
              at javax.swing.plaf.basic.BasicTableHeaderUI$MouseInputHandler.setDraggedDistance(BasicTableHeaderUI.java:293)
              at javax.swing.plaf.basic.BasicTableHeaderUI$MouseInputHandler.mouseReleased(BasicTableHeaderUI.java:263)
              at java.awt.AWTEventMulticaster.mouseReleased(AWTEventMulticaster.java:290)
              at java.awt.Component.processMouseEvent(Component.java:6504)
              at javax.swing.JComponent.processMouseEvent(JComponent.java:3321)
              at java.awt.Component.processEvent(Component.java:6269)
              at java.awt.Container.processEvent(Container.java:2229)
              at java.awt.Component.dispatchEventImpl(Component.java:4860)
              at java.awt.Container.dispatchEventImpl(Container.java:2287)
              at java.awt.Component.dispatchEvent(Component.java:4686)
              at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4832)
              at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4492)
              at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4422)
              at java.awt.Container.dispatchEventImpl(Container.java:2273)
              at java.awt.Window.dispatchEventImpl(Window.java:2713)
              at java.awt.Component.dispatchEvent(Component.java:4686)
              at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:707)
              at java.awt.EventQueue.access$000(EventQueue.java:101)
              at java.awt.EventQueue$3.run(EventQueue.java:666)
              at java.awt.EventQueue$3.run(EventQueue.java:664)
              at java.security.AccessController.doPrivileged(Native Method)
              at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:76)
              at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:87)
              at java.awt.EventQueue$4.run(EventQueue.java:680)
              at java.awt.EventQueue$4.run(EventQueue.java:678)
              at java.security.AccessController.doPrivileged(Native Method)
              at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:76)
              at java.awt.EventQueue.dispatchEvent(EventQueue.java:677)
              at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:211)
              at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:128)
              at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:117)
              at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:113)
              at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:105)
              at java.awt.EventDispatchThread.run(EventDispatchThread.java:90)

        Attachments

          Issue Links

            Activity

              People

                rupashka Pavel Porvatov (Inactive)
                dkorbel David Korbel (Inactive)
                Votes:
                0 Vote for this issue
                Watchers:
                0 Start watching this issue

                Dates

                  Created:
                  Updated:
                  Resolved:
                  Imported:
                  Indexed: