0

我有问题,希望有人能帮助我

我正在尝试从 XAgent 启动多个线程(未呈现 XPage)

public class ImportThread extends NotesThread {

Session currentSession;

public ImportThread(String maildb, String Server)
{

try{
   currentSession =DominoAccess.getCurrentSession();
   this.maildb = currentSession.getDatabase(Server, maildb);
}catch (Exception e) {
e.printStackTrace();
}

}

public void runNotes()
{
   View v = maildb.getView("$Calendar");
}

在这个版本中,我无法访问视图我只得到“null”返回我尝试了一个 Java 线程版本并没有更好。

我在 Openntf http://www.openntf.org/internal/home.nsf/project.xsp?action=openDocument&name=Threads%20and%20Jobs上找到了一些东西

但我得到了一个“访问控制异常”

我没有更多的想法,我希望有人知道如何创建具有多线程的 XAgent

4

2 回答 2

1

As Egor wrote you need the change the Java policy file if you run the Java code from an NSF. You don't have to do this if you deploy your Java code as OSGi plugin. See the documentation of that OpenNTF project.

于 2012-04-18T06:59:22.060 回答
1

Afaik NotesObjects 不应在线程之间共享。因此,您应该使用 String mailDBName 并在它们自己的线程中实例化所有 NotesObjects,而不是使用数据库 mailDB。您还需要注意运行时间:如果您的 XAgent 等待踏板结束,您应该没问题,但如果它是一种“即发即弃”的方法,您需要从更持久的东西(如托管 bean)启动它会话范围。希望有帮助

于 2012-04-18T00:59:54.907 回答