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

Null pointer exception in SwingSet example - FileChooser

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Fixed
    • Icon: P4 P4
    • 1.2.0
    • 1.1.6, 1.1.7, 1.2.0
    • client-libs
    • swing1.1
    • x86
    • windows_95, windows_nt



      Name: mf23781 Date: 10/01/98


      Using the swingset example, select menu item ColorChooser, the file
      chooser. Using the comboBox that says classes, select a disk drive
      such as C: then on popup list, select a:, you should see the following
      exception
      Exception occurred during event dispatching:
      java.lang.NullPointerException:
      at com.sun.java.swing.plaf.metal.MetalFileChooserUI$DirectoryComboBoxModel.addItem(MetalFileChooserUI.java:709)
      at com.sun.java.swing.plaf.metal.MetalFileChooserUI$DirectoryComboBoxModel.access$0(MetalFileChooserUI.java:686)
      at com.sun.java.swing.plaf.metal.MetalFileChooserUI$3.propertyChange(MetalFileChooserUI.java:488)
      at com.sun.java.swing.event.SwingPropertyChangeSupport.firePropertyChange(SwingPropertyChangeSupport.java:154)
      at com.sun.java.swing.JComponent.firePropertyChange(JComponent.java:2908)
      at com.sun.java.swing.JFileChooser.setCurrentDirectory(JFileChooser.java:396)
      at com.sun.java.swing.plaf.metal.MetalFileChooserUI$DirectoryComboBoxAction.actionPerformed(MetalFileChooserUI.java:877)
      at com.sun.java.swing.JComboBox.fireActionEvent(JComboBox.java:638)
      at com.sun.java.swing.JComboBox.selectedItemChanged(JComboBox.java:660)
      at com.sun.java.swing.JComboBox.contentsChanged(JComboBox.java:704)
      at com.sun.java.swing.AbstractListModel.fireContentsChanged(AbstractListModel.java:82)
      at com.sun.java.swing.plaf.metal.MetalFileChooserUI$DirectoryComboBoxModel.setSelectedItem(MetalFileChooserUI.java:745)
      at com.sun.java.swing.JComboBox.setSelectedItem(JComboBox.java:369)
      at com.sun.java.swing.JComboBox.setSelectedIndex(JComboBox.java:400)
      at com.sun.java.swing.plaf.basic.BasicComboBoxUI.selectPreviousPossibleValue(BasicComboBoxUI.java:922)
      at com.sun.java.swing.plaf.metal.MetalComboBoxUI.selectPreviousPossibleValue(MetalComboBoxUI.java:327)
      at com.sun.java.swing.plaf.metal.MetalComboBoxUI$3.actionPerformed(MetalComboBoxUI.java:391)
      at com.sun.java.swing.JComponent.processKeyBinding(JComponent.java:1521)
      at com.sun.java.swing.JComponent.processKeyBindings(JComponent.java:1544)
      at com.sun.java.swing.JComponent.processKeyEvent(JComponent.java:1446)
      at java.awt.Component.processEvent(Component.java:2199)
      at java.awt.Container.processEvent(Container.java:910)
      at java.awt.Component.dispatchEventImpl(Component.java:1799)
      at java.awt.Container.dispatchEventImpl(Container.java:955)
      at java.awt.Component.dispatchEvent(Component.java:1731)
      at java.awt.LightweightDispatcher.processKeyEvent(Container.java:1485)
      at java.awt.LightweightDispatcher.dispatchEvent(Container.java:1469)
      at java.awt.Container.dispatchEventImpl(Container.java:942)
      at java.awt.Window.dispatchEventImpl(Window.java:495)
      at java.awt.Component.dispatchEvent(Component.java:1731)
      at java.awt.EventDispatchThread.run(EventDispatchThread.java:79)

      ======================================================================

      daniel.indrigo@Canada 1998-10-26

      More details from someone else.....


      1.
      Run the attached tiny program (without JIT to have more tracing information)
      e.g.:

      java -Djava.compiler= -classpath .;%classpath% FileChooserBug4

       /* Bug is simple: try to select A:\ drive from directory popup
       * in FileChooser dialog (with A: drive empty),
       * then reply (Ignore or Abort) on OS prompt dialog. Observe two things:
       * 1. The exception is thrown to the System.err.
       * 2. After clicking outside the opened Combo box it closes and
       * shows space place where current directory must be shown
       * whereas file panel shows files from previously selected
       * directory.
       * 3. Try to select A:\ again. No error dialog is displayed and
       * directory changes to A:\ as if it was selectable. The file
       * panel still shows files from previously selected directory. */
      2.
      -----------cut here-------
      import javax.swing.JFileChooser;

      public class FileChooserBug4
        {
        public static void main(String [] args) throws Throwable
          {
          int result = (new JFileChooser()).showOpenDialog(null);
          System.exit(0);
          }
        }
      -----------cut here-------

      3.
      Exception occurred during event dispatching:
      java.lang.NullPointerException:
              at javax.swing.plaf.metal.MetalFileChooserUI$DirectoryComboBoxModel.addItem(MetalFileChooserUI.java:709)
              at javax.swing.plaf.metal.MetalFileChooserUI$DirectoryComboBoxModel.access$0(MetalFileChooserUI.java:686)
              at javax.swing.plaf.metal.MetalFileChooserUI$3.propertyChange(MetalFileChooserUI.java:489)
              at javax.swing.event.SwingPropertyChangeSupport.firePropertyChange(SwingPropertyChangeSupport.java:154)
              at javax.swing.JComponent.firePropertyChange(JComponent.java:2915)
              at javax.swing.JFileChooser.setCurrentDirectory(JFileChooser.java:396)
              at javax.swing.plaf.metal.MetalFileChooserUI$DirectoryComboBoxAction.actionPerformed(MetalFileChooserUI.java:877)
              at javax.swing.JComboBox.fireActionEvent(JComboBox.java:638)
              at javax.swing.JComboBox.selectedItemChanged(JComboBox.java:660)
              at javax.swing.JComboBox.contentsChanged(JComboBox.java:704)
              at javax.swing.AbstractListModel.fireContentsChanged(AbstractListModel.java:82)
              at javax.swing.plaf.metal.MetalFileChooserUI$DirectoryComboBoxModel.setSelectedItem(MetalFileChooserUI.java:745)
              at javax.swing.JComboBox.setSelectedItem(JComboBox.java:369)
              at javax.swing.JComboBox.setSelectedIndex(JComboBox.java:400)
              at javax.swing.plaf.basic.BasicComboPopup$ListMouseHandler.mouseReleased(BasicComboPopup.java:558)
              at java.awt.AWTEventMulticaster.mouseReleased(AWTEventMulticaster.java:228)
              at java.awt.Component.processMouseEvent(Component.java:2355)
              at java.awt.Component.processEvent(Component.java:2200)
              at java.awt.Container.processEvent(Container.java:904)
              at java.awt.Component.dispatchEventImpl(Component.java:1809)
              at java.awt.Container.dispatchEventImpl(Container.java:949)
              at java.awt.Component.dispatchEvent(Component.java:1741)
              at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:1739)
              at java.awt.LightweightDispatcher.processMouseEvent(Container.java:1537)
              at java.awt.LightweightDispatcher.dispatchEvent(Container.java:1453)
              at java.awt.Container.dispatchEventImpl(Container.java:936)
              at java.awt.Window.dispatchEventImpl(Window.java:491)
              at java.awt.Component.dispatchEvent(Component.java:1741)
              at java.awt.EventDispatchThread.run(EventDispatchThread.java:79)
      4. See 3.
      5. One floppy drive, 10 logical
      drives on hard drive and network with sparsely
      disribute letter names (C, D, E, G ...).
      Swing version 1.1beta3 (new package names).

            jeff Jeff Dinkins
            miflemi Mick Fleming
            Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

              Created:
              Updated:
              Resolved:
              Imported:
              Indexed: