我有一个java类,应该将数据从当前数据库传输到另一个服务器。要访问当前数据库,Java似乎需要一个有效的Session
对象:
public class EdgeServerConnection
{
public EdgeServerConnection(Session session) {
try {
// How to get the session into here?
Database db = session.getCurrentDatabase();
...
} catch(Exception e) {
}
}
}
应该从LotusScript代理调用该类,不管怎么样:
Set session = New NotesSession
Set jsession = New JAVASESSION
Set connectionClass = jsession.GetClass("EdgeServerConnection")
Set connectionObject = connectionClass.CreateObject("(L/lotus/notes/Session;V)", session)
但这会引发错误
LS2J:java构造函数无法执行
如果从构造函数和CreateObject调用中删除Session参数,则错误消失。
如何将代理会话引入java类?
答案 0 :(得分:3)
您不能使用LS2J调用的Java类中的Domino对象,也不能将Domino对象作为参数传递。
使用LotusScript中的Notes Domino类完成所有工作,并使用Java类完成您真正需要使用Java完成的任务。
作为替代方案,您可以创建一个完成 all 工作的Java代理。您可以从LotusScript调用Java代理。