Michael (Bug 63945):
If you navigate to File > Open in JMeter 5.2 and the directory in which the current file was opened no longer exists, you will get a null pointer exception. The full stack trace is below. I run into this issue when working with a Git repository that holds JMeter scripts. I will open a file, work with it, then switch branches to look at a different script and get the error shown below.
While this shouldn't matter, I am running JMeter under WSL in Windows 10, rather than the Windows 10 binary.
ERROR | Error processing org.apache.jmeter.gui.action.Load@76b224cd
java.lang.NullPointerException
at java.desktop/javax.swing.plaf.metal.MetalFileChooserUI$IndentIcon.getIconWidth(MetalFileChooserUI.java:971)
at java.desktop/javax.swing.SwingUtilities.layoutCompoundLabelImpl(SwingUtilities.java:1091)
at java.desktop/javax.swing.SwingUtilities.layoutCompoundLabel(SwingUtilities.java:1004)
at java.desktop/javax.swing.plaf.basic.BasicLabelUI.layoutCL(BasicLabelUI.java:103)
at java.desktop/javax.swing.plaf.basic.BasicLabelUI.getPreferredSize(BasicLabelUI.java:257)
at java.desktop/javax.swing.JComponent.getPreferredSize(JComponent.java:1680)
at com.bulenkov.darcula.ui.DarculaComboBoxUI.getSizeForComponent(DarculaComboBoxUI.java:129)
at java.desktop/javax.swing.plaf.basic.BasicComboBoxUI.getDisplaySize(BasicComboBoxUI.java:1409)
at java.desktop/javax.swing.plaf.basic.BasicComboBoxUI.getMinimumSize(BasicComboBoxUI.java:960)
at java.desktop/javax.swing.plaf.basic.BasicComboBoxUI.getPreferredSize(BasicComboBoxUI.java:949)
at java.desktop/javax.swing.JComponent.getPreferredSize(JComponent.java:1680)
at java.desktop/javax.swing.plaf.metal.MetalFileChooserUI$1.getPreferredSize(MetalFileChooserUI.java:246)
at java.desktop/java.awt.BorderLayout.preferredLayoutSize(BorderLayout.java:724)
at java.desktop/java.awt.Container.preferredSize(Container.java:1823)
at java.desktop/java.awt.Container.getPreferredSize(Container.java:1807)
at java.desktop/javax.swing.JComponent.getPreferredSize(JComponent.java:1682)
at java.desktop/java.awt.BorderLayout.preferredLayoutSize(BorderLayout.java:729)
at java.desktop/javax.swing.plaf.metal.MetalFileChooserUI.getPreferredSize(MetalFileChooserUI.java:622)
at java.desktop/javax.swing.JComponent.getPreferredSize(JComponent.java:1680)
at java.desktop/java.awt.BorderLayout.preferredLayoutSize(BorderLayout.java:724)
at java.desktop/java.awt.Container.preferredSize(Container.java:1823)
at java.desktop/java.awt.Container.getPreferredSize(Container.java:1807)
at java.desktop/javax.swing.JComponent.getPreferredSize(JComponent.java:1682)
at java.desktop/javax.swing.JRootPane$RootLayout.preferredLayoutSize(JRootPane.java:866)
at java.desktop/java.awt.Container.preferredSize(Container.java:1823)
at java.desktop/java.awt.Container.getPreferredSize(Container.java:1807)
at java.desktop/javax.swing.JComponent.getPreferredSize(JComponent.java:1682)
at java.desktop/java.awt.BorderLayout.preferredLayoutSize(BorderLayout.java:724)
at java.desktop/java.awt.Container.preferredSize(Container.java:1823)
at java.desktop/java.awt.Container.getPreferredSize(Container.java:1807)
at java.desktop/java.awt.Window.pack(Window.java:826)
at java.desktop/javax.swing.JFileChooser.createDialog(JFileChooser.java:819)
at java.desktop/javax.swing.JFileChooser.showDialog(JFileChooser.java:747)
at java.desktop/javax.swing.JFileChooser.showOpenDialog(JFileChooser.java:653)
at org.apache.jmeter.gui.util.FileDialoger.promptToOpenFile(FileDialoger.java:207)
at org.apache.jmeter.gui.util.FileDialoger.promptToOpenFile(FileDialoger.java:156)
at org.apache.jmeter.gui.util.FileDialoger.promptToOpenFile(FileDialoger.java:135)
at org.apache.jmeter.gui.util.FileDialoger.promptToOpenFile(FileDialoger.java:115)
at org.apache.jmeter.gui.action.Load.doActionAfterCheck(Load.java:76)
at org.apache.jmeter.gui.action.AbstractActionWithNoRunningTest.doAction(AbstractActionWithNoRunningTest.java:45)
at org.apache.jmeter.gui.action.ActionRouter.performAction(ActionRouter.java:88)
at org.apache.jmeter.gui.action.ActionRouter.lambda$actionPerformed$0(ActionRouter.java:70)
at java.desktop/java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:313)
at java.desktop/java.awt.EventQueue.dispatchEventImpl(EventQueue.java:770)
at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:721)
at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:715)
at java.base/java.security.AccessController.doPrivileged(Native Method)
at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:85)
at java.desktop/java.awt.EventQueue.dispatchEvent(EventQueue.java:740)
at java.desktop/java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:203)
at java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:124)
at java.desktop/java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:113)
at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:109)
at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
at java.desktop/java.awt.EventDispatchThread.run(EventDispatchThread.java:90)
Severity: normal
OS: All
Michael (Bug 63945):
If you navigate to File > Open in JMeter 5.2 and the directory in which the current file was opened no longer exists, you will get a null pointer exception. The full stack trace is below. I run into this issue when working with a Git repository that holds JMeter scripts. I will open a file, work with it, then switch branches to look at a different script and get the error shown below.
While this shouldn't matter, I am running JMeter under WSL in Windows 10, rather than the Windows 10 binary.
ERROR | Error processing org.apache.jmeter.gui.action.Load@76b224cd
java.lang.NullPointerException
at java.desktop/javax.swing.plaf.metal.MetalFileChooserUI$IndentIcon.getIconWidth(MetalFileChooserUI.java:971)
at java.desktop/javax.swing.SwingUtilities.layoutCompoundLabelImpl(SwingUtilities.java:1091)
at java.desktop/javax.swing.SwingUtilities.layoutCompoundLabel(SwingUtilities.java:1004)
at java.desktop/javax.swing.plaf.basic.BasicLabelUI.layoutCL(BasicLabelUI.java:103)
at java.desktop/javax.swing.plaf.basic.BasicLabelUI.getPreferredSize(BasicLabelUI.java:257)
at java.desktop/javax.swing.JComponent.getPreferredSize(JComponent.java:1680)
at com.bulenkov.darcula.ui.DarculaComboBoxUI.getSizeForComponent(DarculaComboBoxUI.java:129)
at java.desktop/javax.swing.plaf.basic.BasicComboBoxUI.getDisplaySize(BasicComboBoxUI.java:1409)
at java.desktop/javax.swing.plaf.basic.BasicComboBoxUI.getMinimumSize(BasicComboBoxUI.java:960)
at java.desktop/javax.swing.plaf.basic.BasicComboBoxUI.getPreferredSize(BasicComboBoxUI.java:949)
at java.desktop/javax.swing.JComponent.getPreferredSize(JComponent.java:1680)
at java.desktop/javax.swing.plaf.metal.MetalFileChooserUI$1.getPreferredSize(MetalFileChooserUI.java:246)
at java.desktop/java.awt.BorderLayout.preferredLayoutSize(BorderLayout.java:724)
at java.desktop/java.awt.Container.preferredSize(Container.java:1823)
at java.desktop/java.awt.Container.getPreferredSize(Container.java:1807)
at java.desktop/javax.swing.JComponent.getPreferredSize(JComponent.java:1682)
at java.desktop/java.awt.BorderLayout.preferredLayoutSize(BorderLayout.java:729)
at java.desktop/javax.swing.plaf.metal.MetalFileChooserUI.getPreferredSize(MetalFileChooserUI.java:622)
at java.desktop/javax.swing.JComponent.getPreferredSize(JComponent.java:1680)
at java.desktop/java.awt.BorderLayout.preferredLayoutSize(BorderLayout.java:724)
at java.desktop/java.awt.Container.preferredSize(Container.java:1823)
at java.desktop/java.awt.Container.getPreferredSize(Container.java:1807)
at java.desktop/javax.swing.JComponent.getPreferredSize(JComponent.java:1682)
at java.desktop/javax.swing.JRootPane$RootLayout.preferredLayoutSize(JRootPane.java:866)
at java.desktop/java.awt.Container.preferredSize(Container.java:1823)
at java.desktop/java.awt.Container.getPreferredSize(Container.java:1807)
at java.desktop/javax.swing.JComponent.getPreferredSize(JComponent.java:1682)
at java.desktop/java.awt.BorderLayout.preferredLayoutSize(BorderLayout.java:724)
at java.desktop/java.awt.Container.preferredSize(Container.java:1823)
at java.desktop/java.awt.Container.getPreferredSize(Container.java:1807)
at java.desktop/java.awt.Window.pack(Window.java:826)
at java.desktop/javax.swing.JFileChooser.createDialog(JFileChooser.java:819)
at java.desktop/javax.swing.JFileChooser.showDialog(JFileChooser.java:747)
at java.desktop/javax.swing.JFileChooser.showOpenDialog(JFileChooser.java:653)
at org.apache.jmeter.gui.util.FileDialoger.promptToOpenFile(FileDialoger.java:207)
at org.apache.jmeter.gui.util.FileDialoger.promptToOpenFile(FileDialoger.java:156)
at org.apache.jmeter.gui.util.FileDialoger.promptToOpenFile(FileDialoger.java:135)
at org.apache.jmeter.gui.util.FileDialoger.promptToOpenFile(FileDialoger.java:115)
at org.apache.jmeter.gui.action.Load.doActionAfterCheck(Load.java:76)
at org.apache.jmeter.gui.action.AbstractActionWithNoRunningTest.doAction(AbstractActionWithNoRunningTest.java:45)
at org.apache.jmeter.gui.action.ActionRouter.performAction(ActionRouter.java:88)
at org.apache.jmeter.gui.action.ActionRouter.lambda$actionPerformed$0(ActionRouter.java:70)
at java.desktop/java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:313)
at java.desktop/java.awt.EventQueue.dispatchEventImpl(EventQueue.java:770)
at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:721)
at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:715)
at java.base/java.security.AccessController.doPrivileged(Native Method)
at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:85)
at java.desktop/java.awt.EventQueue.dispatchEvent(EventQueue.java:740)
at java.desktop/java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:203)
at java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:124)
at java.desktop/java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:113)
at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:109)
at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
at java.desktop/java.awt.EventDispatchThread.run(EventDispatchThread.java:90)
Severity: normal
OS: All