Problem in BeanShell script: org.apache.jorphan.util.JMeterException: Error invoking bsh method: eval Sourced file: inline evaluation of: ``int total = Integer.parseInt(vars.get("total")); log.info("total="+total); sum = . . . '' : Error in method invocation: Method put( java.lang.String, int ) not found in class'org.apache.jmeter.threads.JMeterVariables'
时间: 2024-02-23 10:00:14 浏览: 367
这个错误的原因是在 BeanShell 脚本中调用了 JMeterVariables 类的 put 方法,但是该类并没有 put 方法接受 int 类型的参数。因此,你应该将参数转换为字符串类型才能正确地调用 put 方法,如下所示:
```
int total = Integer.parseInt(vars.get("total"));
log.info("total="+total);
sum = Integer.parseInt(vars.get("sum"));
vars.put("sum", String.valueOf(sum + total));
```
这样,就可以正确地将 sum 和 total 相加,并将结果存储回 JMeter 变量中。
相关问题
Exception executing script. org.apache.jorphan.util.JMeterException: Error invoking bsh method
这个异常是由于 JMeter 执行脚本时出错引起的。
`org.apache.jorphan.util.JMeterException` 是 JMeter 框架的异常类,它表示在执行脚本时发生了错误。
`Error invoking bsh method` 表示在执行 BeanShell (bsh) 脚本方法时出现了错误。
要解决这个问题,您可以按照以下步骤进行排查:
1. 检查脚本中的语法错误:请确保您的脚本中没有语法错误,如缺少分号、括号不匹配等。这些错误可能导致脚本无法正确执行。
2. 检查脚本中的方法调用:请确保您的脚本中的方法调用正确,并且方法名与实际存在的方法匹配。如果方法名拼写错误或者方法不存在,会导致执行时出现错误。
3. 检查依赖库和环境配置:某些情况下,JMeter 需要依赖库或环境配置才能正确执行脚本。请确保您的依赖库已正确配置,并且环境符合要求。
如果以上步骤都没有解决问题,建议您提供更详细的错误信息和相关的脚本代码,以便更好地帮助您解决问题。
Sample Count:1 Error Count:1 Data type ("text"|"bin"|""):text Response code:500 Response message:org.apache.jorphan.util.JMeterException: Error invoking bsh method: eval Sourced file: inline evaluation of: ``import java.io.*; byte[] result = prev.getResponseData(); String file_name . . . '' Token Parsing Error: Lexical error at line 5, column 哪里错了4. Encountered: "U" (85), after : "\"C:\\"
这是一个 JMeter 的 Sampler 执行出错的信息。根据错误提示,可以看到该 Sampler 的执行结果为:
- Sample Count: 1,表示该 Sampler 被执行了一次。
- Error Count: 1,表示该 Sampler 执行过程中出现了一个错误。
- Data type: text,表示该 Sampler 返回的数据类型为文本。
- Response code: 500,表示该 Sampler 的响应状态码为 500。
- Response message: org.apache.jorphan.util.JMeterException: Error invoking bsh method: eval Sourced file: inline evaluation of: ``import java.io.*; byte[] result = prev.getResponseData(); String file_name . . . '' Token Parsing Error: Lexical error at line 5, column 4. Encountered: "U" (85), after : "\"C:\\",表示该 Sampler 执行过程中出现了一个 JMeter 异常,该异常是在执行 BeanShell 脚本时出现的。具体原因是在第五行的字符串中出现了一个语法错误,解析失败。
需要根据具体的错误信息来查找问题所在,可以首先检查第五行的字符串,看是否存在语法错误或非法字符。如果第五行没有问题,还需要检查该行之前的代码,找出可能存在问题的地方。同时,也需要检查整个脚本的语法是否正确,确保没有其他的语法错误。
阅读全文