-
Bug
-
Resolution: Duplicate
-
P1
-
None
-
5.0
-
generic
-
generic
Name: ik75403 Date: 02/19/2004
It is impossible to open nonexistent file in JFileChooser
Test case:
---- FileChooserTest.java ---
import javax.swing.*;
public class FileChooserTest {
private static void test() {
JFileChooser fileChooser = new JFileChooser();
fileChooser.showSaveDialog(null);
System.out.println(fileChooser.getSelectedFile());
fileChooser.showOpenDialog(null);
System.out.println(fileChooser.getSelectedFile());
}
public static void main(String[] args) {
SwingUtilities.invokeLater(
new Runnable() {
public void run() {
test();
}
});
}
}
----
Steps to reproduce:
1. run FileChooserTest
2. input any nonexistent name into the inputField (test.test for instance)
3. Press confirm button
4. getSelectedFile returns null.
This bug is a regression to 4922507
This change
sun/javax/FilePane:1243
list.setSelectedIndex(0);
sets the selectedFile to null
Stack trace:
java.lang.Exception: Stack trace
at java.lang.Thread.dumpStack(Thread.java:1109)
at javax.swing.JFileChooser.setSelectedFile(JFileChooser.java:465)
at javax.swing.plaf.basic.BasicFileChooserUI$Handler.valueChanged(BasicFileChooserUI.java:505)
at javax.swing.JList.fireSelectionValueChanged(JList.java:1317)
at javax.swing.JList$ListSelectionHandler.valueChanged(JList.java:1331)
at javax.swing.DefaultListSelectionModel.fireValueChanged(DefaultListSelectionModel.java:187)
at javax.swing.DefaultListSelectionModel.fireValueChanged(DefaultListSelectionModel.java:167)
at javax.swing.DefaultListSelectionModel.fireValueChanged(DefaultListSelectionModel.java:214)
at javax.swing.DefaultListSelectionModel.changeSelection(DefaultListSelectionModel.java:408)
at javax.swing.DefaultListSelectionModel.changeSelection(DefaultListSelectionModel.java:417)
at javax.swing.DefaultListSelectionModel.setSelectionInterval(DefaultListSelectionModel.java:441)
at javax.swing.JList.setSelectedIndex(JList.java:1732)
at sun.swing.FilePane.clearSelection(FilePane.java:1243)
at sun.swing.FilePane.setFileSelected(FilePane.java:1115)
at sun.swing.FilePane.doSelectedFileChanged(FilePane.java:1131)
at sun.swing.FilePane.propertyChange(FilePane.java:1196)
at java.beans.PropertyChangeSupport.firePropertyChange(PropertyChangeSupport.java:329)
at java.beans.PropertyChangeSupport.firePropertyChange(PropertyChangeSupport.java:266)
at java.awt.Component.firePropertyChange(Component.java:7106)
at javax.swing.JFileChooser.setSelectedFile(JFileChooser.java:477)
at javax.swing.plaf.basic.BasicFileChooserUI$ApproveSelectionAction.actionPerformed(BasicFileChooserUI.java:916)
at javax.swing.SwingUtilities.notifyAction(SwingUtilities.java:1569)
at javax.swing.JComponent.processKeyBinding(JComponent.java:2715)
at javax.swing.JComponent.processKeyBindings(JComponent.java:2761)
at javax.swing.JComponent.processKeyEvent(JComponent.java:2678)
at java.awt.Component.processEvent(Component.java:5242)
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.KeyboardFocusManager.redispatchEvent(KeyboardFocusManager.java:1804)
at java.awt.DefaultKeyboardFocusManager.dispatchKeyEvent(DefaultKeyboardFocusManager.java:668)
at java.awt.DefaultKeyboardFocusManager.preDispatchKeyEvent(DefaultKeyboardFocusManager.java:916)
at java.awt.DefaultKeyboardFocusManager.typeAheadAssertions(DefaultKeyboardFocusManager.java:794)
at java.awt.DefaultKeyboardFocusManager.dispatchEvent(DefaultKeyboardFocusManager.java:632)
at java.awt.Component.dispatchEventImpl(Component.java:3819)
======================================================================
- duplicates
-
JDK-4990476 Regression: JFileChooser return null value when user select a nonexist file
-
- Closed
-