我有以下代码的jar文件:
MyClass.jar
package com.sample;
public class MyClass {
public static String getName() {
return "Hii";
}
}
我想在javascript中加载MyClass.jar并调用getName方法。 我试过跟随代码
var cl = new Packages.java.net.URLClassLoader(
[new Packages.java.net.URL('C:\\tmp\\MyClass.jar')]);
var aClass = Packages.java.lang.Class.forName("MyClass", true, cl);
var aStaticMethod = aClass.getMethod("getName", []);
var greeting = aStaticMethod.invoke(null, []);
当我运行上面的代码时,我收到错误“包未定义”。
实际上我在Loadrunner Web Http / html协议脚本中运行上面的Javascript代码。
我将jar文件保存在Loadrunner bin文件夹中并尝试下面的代码。
function myfun() {
var myvariable = Packages.com.sample;
var foo = new myvariable.MyClass();
return foo.getName();
}
我得到相同的错误“包未定义”
请建议。
lr.loadLibrary()
函数将用于将外部js导入脚本,但不确定它是否也会导入jar文件。试试吧,如果没有尝试使用JAVA而不是HTTP协议 - 这肯定有助于满足您的要求。