LotusScript与公式运行Java代理的区别

我在页面上做了两个save按钮。如下图所示:然后在第一个Save按钮用公式运行Java代理。在第二个Save2按钮用LS运行同一个Java代理。Java代理如下:import lotus.domino.*;import javax.swing.JOptionPane;public class JavaAgent extends AgentBase {    public voi...显示全部
我在页面上做了两个save按钮。如下图所示:

QQ截图20150113213416.png


然后在第一个Save按钮用公式运行Java代理。

在第二个Save2按钮用LS运行同一个Java代理。

Java代理如下:
import lotus.domino.*;

import javax.swing.JOptionPane;

public class JavaAgent extends AgentBase {

    public void NotesMain() {

      try {
          Session session = getSession();
          AgentContext agentContext = session.getAgentContext();

          // (Your code goes here)
          Document doc = agentContext.getDocumentContext();
          System.out.println("b");
          System.out.println(doc.getUniversalID());
          doc.replaceItemValue("DocID", doc.getUniversalID());
          System.out.println("c");
          } catch(Exception e) {
             e.printStackTrace();
       }
   }
}

结果发现公式调用的代理可以运行成功,可以向DocID域里写值。而LS调用的代理运行不成功,报如下错误:
java.lang.NullPointerException
        at JavaAgent.NotesMain(Unknown Source)
        at lotus.domino.AgentBase.runNotes(Unknown Source)
        at lotus.domino.NotesThread.run(Unknown Source)


请问是什么原因,谢谢指教!收起
参与14

查看其它 8 个回答Jenny的回答

JennyJenny软件开发工程师建兴光电科技(北海)有限公司
应该跟你的代理触发方式有关吧
互联网服务 · 2015-07-18
浏览1422

回答者

Jenny
软件开发工程师建兴光电科技(北海)有限公司

Jenny 最近回答过的问题

回答状态

  • 发布时间:2015-07-18
  • 关注会员:2 人
  • 回答浏览:1422
  • X社区推广