导入 Java 库并通过 Lotus Script 和 SSJS 调用其 类

Import a Java library and calling its classes through Lotus Script and SSJS

有java语言的库,需要用Lotus Script和SSJS调用。库的脚本通过Lotus Script运行没有问题,但是在SSJS上调用是不可能的。

Java图书馆:

public class Untitled { 

  public int add(int a, int b) { return a + b; }
  public int div(int a, int b) { return a / b; }
  public int mul(int a, int b) { return a * b; }
  public int sub(int a, int b) { return a - b; }
  public String dummy() {return "42"; }
}

荷花文

Option Declare
Uselsx "*javacon"
Use "one"

Dim myClass As JavaClass
Dim calculator As JavaObject
Dim mySession As JavaSession
Dim c As String
Set mySession = New JavaSession()
Set myClass = mySession.GetClass("com.two.Untitled")
Set calculator = myClass.CreateObject
c = calculator.dummy()
Messagebox c

向包中添加库不起作用。我创建了包并将库放在那里(Java 代码类似)

SSJS

importPackage(com.myUntitled)
var myTest = new Untitled2();
return myTest.dummy();

如果我理解正确,您已经创建了一个 Java 脚本库并尝试从 XPage 调用它。不幸的是,这是不可能的:要能够在 XPage/SSJS 中使用该 Java 代码,您必须将其复制到 Java class(在 Code/Java 部分美国国家科学基金会)。

我知道从 LotusScript 和 XPages 共享代码并使用它的唯一方法是创建一个 JAR 文件并将其部署到 jvm/lib/ext 文件夹。

导入的问题只是 class 名称:Untitled2 不是 Untitled_2(您应该重命名 class 或更改代码)。