Xpages:使用OpenNTF ODA的Java方法不保存文档

时间:2016-04-19 20:32:35

标签: java xpages

我已经在Xpages中采用了针对java的OpenNTF ODA。到目前为止真的很棒,我想我刚刚触及了表面。

我正在调用Java方法并希望保存文档。该方法被调用,我没有看到任何错误,但文档永远不会更新。

该文件正在保存"但它只是从观点中消失了。

import lotus.domino.NotesException;

import org.openntf.domino.*;
import org.openntf.domino.utils.Factory;
import org.openntf.domino.Database;
import org.openntf.domino.Session;
import java.io.Serializable;

public class Build implements Serializable  {
    private static final long serialVersionUID = 1L;

    public void process1(String docID) {

        try {

        System.out.println("Got here.");
        Session session = Factory.getSession();
        Database thisDB = session.getCurrentDatabase();
        Database PCDataDB = session.getDatabase(thisDB.getServer(), "scoApps\\PC\\PCData.nsf", false);
        Document thisDoc = PCDataDB.getDocumentByUNID(docID);   
        Item itm = thisDoc.replaceItemValue("status",2, true);
        thisDoc.save(true,false);
        System.out.println("Got here.");

        } catch (Exception e) {
            e.printStackTrace();
        }
    }
}

2 个答案:

答案 0 :(得分:2)

我怀疑该文档实际上已保存,但是文档中的值已设置为从您正在查看的视图中排除。

您可以创建“所有文档”视图。将公式设置为Select @All。为表单添加一列,为最后编辑日期添加一列,设置适当的排序选项,您应该能够找到该文档并查看它从视图中排除的原因。

答案 1 :(得分:0)

这是对我的疏忽。代码将字段“status”从1更改为2,但是当我最初设置字段时,它是文本,而不是数字。所以我的文件不属于所有观点。当我接受Rob的建议并查看所有文档时,很容易看出发生了什么。