Java 获取JMeterException:调用bsh方法时出错:未定义参数:saa。使用beanshell取样器时
我正在使用下面的java代码连接到redis并执行某些活动我在响应中获得了所需的值,但我的beanshell正在响应下面的响应消息: ERROR-jmeter.util.BeanShellInterpreter:调用bsh方法时出错:eval源文件:内联计算:``import java.io.InputStream;导入java.text.ParseException;导入redis.cli…“”:未定义参数:saa WARN-jmeter.protocol.java.sampler.BeanShellSampler:org.apache.jorphan.util.JMeterException:调用bsh方法时出错:eval源文件:内联求值:``import java.io.InputStream;导入java.text.ParseException;导入redis.cli…“”:未定义参数:saa 请查找以下代码以供参考Java 获取JMeterException:调用bsh方法时出错:未定义参数:saa。使用beanshell取样器时,java,Java,我正在使用下面的java代码连接到redis并执行某些活动我在响应中获得了所需的值,但我的beanshell正在响应下面的响应消息: ERROR-jmeter.util.BeanShellInterpreter:调用bsh方法时出错:eval源文件:内联计算:``import java.io.InputStream;导入java.text.ParseException;导入redis.cli…“”:未定义参数:saa WARN-jmeter.protocol.java.sampler.BeanS
import java.io.InputStream;
import java.text.ParseException;
import redis.clients.jedis.Jedis;
import com.jcraft.jsch.Channel;
import com.jcraft.jsch.ChannelExec;
import com.jcraft.jsch.JSch;
import com.jcraft.jsch.Session;
String host = "ssh.journaldev.com";
String user = "sshuser";
String password = "sshpwd";
String command1 = "${ShardUtiLoc} && java -jar vsb-shardutility.jar -h ${IP} -p ${RedisPort1} -a ${masterauthKey} -m sm:lite -k ${vin}";
//String command1 = "${ShardUtiLoc} && ${ShrdUtilJarRunCmd}${vin}";
Integer j = 0;
try {
java.util.Properties config = new java.util.Properties();
config.put("StrictHostKeyChecking", "no");
JSch jsch = new JSch();
Session session = jsch.getSession("${VSBServUsernme}", "${IP}", 22);
session.setPassword("${VSBServPassword}");
session.setConfig(config);
session.connect();
System.out.println("Connected");
Channel channel = session.openChannel("exec");
((ChannelExec) channel).setCommand(command1);
channel.setInputStream(null);
((ChannelExec) channel).setErrStream(System.err);
InputStream in = channel.getInputStream();
channel.connect();
byte[] tmp = new byte[1024];
while (true) {
while (in.available() > 0) {
int i = in.read(tmp, 0, 1024);
if (i < 0)
break;
String sa = new String(tmp, 0, i);
String saa = sa.substring(110).substring(0,3);
System.out.print("printing sa " + saa);
// j = Integer.valueOf(sa);
/*
* try{ j=Integer.parseInt(sa); } catch(Exception e) {
* e.printStackTrace(); }
* System.out.println("printing j "+j);
*/
Jedis jedis = new Jedis("${IP}", ${RedisPort2});
jedis.auth("${masterauthKey}");
System.out.println("Connection to server sucessfully");
// check whether server is running or not
System.out.println("Server is running: " + jedis.ping());
/*
* jedis.sadd("neeta", "200");
* System.out.println(jedis.smembers("neeta"));
*/
System.out.println(jedis.select(Integer.parseInt(saa)));
System.out.println(jedis.hget(
"sm:{${vin}}:state", "cst"));
String k = jedis
.hget("sm:{${vin}}:state", "cst");
System.out.println(k);
vars.put("storedValue",k);
SampleResult.setResponseData(k);
}
if (channel.isClosed()) {
System.out.println("exit-status: "
+ channel.getExitStatus());
break;
}
/*try {
Thread.sleep(1000);
} catch (Exception ee) {
}*/
}
channel.disconnect();
session.disconnect();
System.out.println("DONE");
} catch (Exception e) {
e.printStackTrace();
/*
* InputStream in=channel.getInputStream(); byte[] tmp=new byte[1024];
* int i=in.read(tmp, 0, 1024);
*/
int j = 0;
try {
j = Integer.parseInt(saa);
System.out.println(j);
} catch (Exception e) {
e.printStackTrace();
}
return j;
}
import java.io.InputStream;
导入java.text.ParseException;
导入redis.clients.jedis.jedis;
导入com.jcraft.jsch.Channel;
导入com.jcraft.jsch.ChannelExec;
导入com.jcraft.jsch.jsch;
导入com.jcraft.jsch.Session;
String host=“ssh.journaldev.com”;
字符串user=“sshuser”;
字符串password=“sshpwd”;
String command1=“${ShardUtiLoc}&&java-jar vsb-shardutility.jar-h${IP}-p${RedisPort1}-a${masterauthKey}-m sm:lite-k${vin}”;
//String command1=“${ShardUtiLoc}&${ShrdUtilJarRunCmd}${vin}”;
整数j=0;
试一试{
java.util.Properties config=new java.util.Properties();
配置放置(“检查”、“否”);
JSch JSch=新的JSch();
Session Session=jsch.getSession(“${VSBServUsernme}”,“${IP}”,22);
session.setPassword(“${VSBServPassword}”);
session.setConfig(config);
session.connect();
System.out.println(“已连接”);
Channel=session.openChannel(“exec”);
((ChannelExec)channel.setCommand(command1);
channel.setInputStream(空);
((ChannelExec)channel.setErrStream(System.err);
InputStream in=channel.getInputStream();
channel.connect();
字节[]tmp=新字节[1024];
while(true){
while(in.available()>0){
inti=in.read(tmp,0,1024);
if(i<0)
打破
字符串sa=新字符串(tmp,0,i);
字符串saa=sa.substring(110).substring(0,3);
系统输出打印(“打印sa”+saa);
//j=整数。值(sa);
/*
*尝试{j=Integer.parseInt(sa);}catch(异常e){
*e.printStackTrace();}
*System.out.println(“打印j”+j);
*/
绝地武士=新绝地武士(${IP},${RedisPort2});
jedis.auth(${masterauthKey});
System.out.println(“成功连接到服务器”);
//检查服务器是否正在运行
System.out.println(“服务器正在运行:+jedis.ping());
/*
*绝地武士萨德(“尼塔”,“200”);
*System.out.println(绝地武士史密伯斯(“neeta”);
*/
System.out.println(jedis.select(Integer.parseInt(saa));
系统输出打印LN(jedis.hget(
“sm:{${vin}}:州”、“cst”);
字符串k=绝地武士
.hget(“sm:{${vin}}:状态”,“cst”);
系统输出println(k);
变量put(“存储值”,k);
采样器结果设定响应数据(k);
}
if(channel.isClosed()){
System.out.println(“退出状态:”
+channel.getExitStatus());
打破
}
/*试一试{
睡眠(1000);
}捕获(异常ee){
}*/
}
通道断开();
session.disconnect();
系统输出打印项次(“完成”);
}捕获(例外e){
e、 printStackTrace();
/*
*InputStream in=channel.getInputStream();字节[]tmp=新字节[1024];
*inti=in.read(tmp,0,1024);
*/
int j=0;
试一试{
j=整数.parseInt(saa);
系统输出println(j);
}捕获(例外e){
e、 printStackTrace();
}
返回j;
}
任何帮助都将不胜感激