2

我在 JMeter 中面临“更新 GUI 问题”错误。我正在使用 web 驱动程序示例,当我插入 java 脚本代码时。发生此错误。JMeter 版本 - 3.3 我尝试过使用较低版本以及:2.11、3.0、3.2 等,但没有找到解决方案。

当 JMeter 下的日志文件中发生此错误时,我可以看到以下异常:-

///////////////////////////////////////// //////////////////////////

jmeter.gui.action.ActionRouter: performAction(logger_panel_enable_disable) updateCurrentGui() onjava.awt.event.ActionEvent[ACTION_PERFORMED,cmd=logger_panel_enable_disable,when=0,modifiers=] on javax.swing.JButton[,1281,8,22x22, alignmentX=0.0,alignmentY=0.5,border=javax.swing.plaf.BorderUIResource$CompoundBorderUIResource@15a010e8,flags=16777504,maximumSize=,minimumSize=,preferredSize=,defaultIcon=jar:file:/C:/Users/gaurav.sharma /Downloads/apache-jmeter-2.11/apache-jmeter-2.11/lib/ext/ApacheJMeter_core.jar!/org/apache/jmeter/images/warning.png,disabledIcon=,disabledSelectedIcon=,margin=java.awt.Insets[ top=0,left=0,bottom=0,right=0],paintBorder=false,paintFocus=true,pressedIcon=,rolloverEnabled=true,rolloverIcon=,rolloverSelectedIcon=,selectedIcon=,text=,defaultCapable=true]导致java .lang.ClassCastException:java.desktop/javax.swing.text。AbstractDocument$DefaultDocumentEventUndoableWrapper 无法转换为 java.desktop/javax.swing.text.AbstractDocument$DefaultDocumentEvent

///////////////////////////////////////// //////////////////////////

4

1 回答 1

2

TL;DR Bug 在最新的 JMeter 中标记为已修复

此错误发生在 Java 9 中。它在各种项目中报告为netbeans

这个错误是由于 Java 9 中的一个变化,其中参数的编辑(一个 DefaultDocumentEvent)首先被包装在一个 DefaultDocumentEventUndoableWrapper 中,它隐藏了行号和其他重要的东西(我不明白为什么!!),之前

公共无效 undoableEditHappened(UndoableEditEvent e)

被调用。

https://github.com/netroby/jdk9-dev/blob/master/jdk/src/java.desktop/share/classes/javax/swing/text/AbstractDocument.java#L279

这使得这个转换中断: AbstractDocument.DefaultDocumentEvent event = (AbstractDocument.DefaultDocumentEvent)e.getEdit();

问题是这种演员被广泛用于各种代码 - 源自 2008 年的这篇文章:https ://tips4java.wordpress.com/2008/10/27/compound-undo-manager/

这是一个可能的修复: https ://github.com/nordfalk/jsyntaxpane/commit/5fc75594f8bc4df6e8f7096d4a440490b768fd46#diff-b3f8826824f551219879f1c798618c12R67

JMeter 尚不支持 JAVA 9,下一个 JMeter 版本应该支持它,您可以在Bug 61529中帮助并关注此项目的进展。

于 2017-11-30T11:23:48.807 回答