最有尊严的开发者,
我在从Lotus脚本代理调用我自己的java类中的方法时遇到问题.
我简化的Java类看起来像这样
import lotus.domino.*;
public class MyClass{
/* .. omitted constructor and other methods .. */
public void myMethod(Document doc){
/* ... do things with the document object ...*/
}
}
Run Code Online (Sandbox Code Playgroud)
现在这个类包含在正确的use语句中,我可以在lotus脚本中迭代class对象上的classmethods来获取所需参数的签名.
但是当我尝试调用该方法时,我得到了一个 LS2J: Parameter mismatch calling Method myMethod
我在JavaObject上尝试了点符号(不,我没有使用Mac;))和ADT
Dim doc as NotesDocument
Dim jSession As JavaSession
Dim jClass As JavaClass
Dim jObject As JavaObject
...
Set jSession = New JavaSession()
Set jClass = jSession.Getclass("MyClass")
Set jObject = jClass.Createobject()
Call jObject.myMethod(doc)
Run Code Online (Sandbox Code Playgroud)
和分别
Dim jMethod as JavaMethod
...
Set …Run Code Online (Sandbox Code Playgroud) 我可以在本地运行 IBM Notes 代理而不会出现错误,但是当我在服务器上运行该代理时,出现以下错误。
LS2J 错误:在过程 GETTEMPLATE 中抛出 java.lang.NoClassDefFoundError:org.apache.pdfbox.pdmodel.PDDocument,第 79 行
我的LotusScript代理使用 LS2J 调用 java 类。java 类使用以下库:
import java.io.File;
import org.apache.pdfbox.pdmodel.PDDocument;
import org.apache.pdfbox.pdmodel.PDDocumentCatalog;
import org.apache.pdfbox.pdmodel.interactive.form.PDAcroForm;
import org.apache.pdfbox.pdmodel.interactive.form.PDField;
import org.w3c.dom.Document;
import org.w3c.dom.*;
import javax.xml.parsers.DocumentBuilderFactory;
import javax.xml.parsers.DocumentBuilder;
import org.xml.sax.SAXException;
import org.xml.sax.SAXParseException;
Run Code Online (Sandbox Code Playgroud)
我已将以下 JAR 文件添加到 Domino 服务器,并重新启动它。
pdfbox-1.8.jar,
commons-lang-2.1.jar,
commons-logging-1.2.jar
Run Code Online (Sandbox Code Playgroud)
是否还有其他 JAR 文件需要复制到:\notes\jvm\lib\ext
或者还有其他问题吗?