Xpages xe:objectData-对象已被删除或回收

Xpages xe:objectData-对象已被删除或回收,xpages,xpages-extlib,Xpages,Xpages Extlib,我使用xe:objectData作为xp:dataTable的数据源。objectData1使用一些Java代码从与键(用户名)匹配的视图中检索所有文档。Java代码如下所示: package com.isatweb.cois; import static com.ibm.xsp.extlib.util.ExtLibUtil.getCurrentDatabase; import static com.ibm.xsp.extlib.util.ExtLibUtil.getCurrentSessio

我使用xe:objectData作为xp:dataTable的数据源。objectData1使用一些Java代码从与键(用户名)匹配的视图中检索所有文档。Java代码如下所示:

package com.isatweb.cois;

import static com.ibm.xsp.extlib.util.ExtLibUtil.getCurrentDatabase;
import static com.ibm.xsp.extlib.util.ExtLibUtil.getCurrentSession;

import java.io.Serializable;

import lotus.domino.Database;
import lotus.domino.Name;
import lotus.domino.Session;
import lotus.domino.View;
import lotus.domino.ViewEntryCollection;

public class ObjectDataVisits implements Serializable {

    private static final long serialVersionUID = 1L;

    ViewEntryCollection vec = null;
    public ObjectDataVisits(){
        try {
            this.update();
        } catch (Exception e) {
            System.out.print(e);
        }
    }

    public void update()  {
        try {
            Database _db = getCurrentDatabase();
            Session _session = getCurrentSession();
            Name nam = _session.createName(_session.getEffectiveUserName());
            String username = nam.getAbbreviated().replace(" ", "#").replace("/", "#").toUpperCase();
            View view = _db.getView("vw_visit_open");
            this.vec = view.getAllEntriesByKey(username);

        } catch (Exception e) {
            System.out.print(e);
        }
    }

    public ViewEntryCollection getVisits(){
                return this.vec;
    }
}
XPage具有以下代码

当我第一次加载页面时,数据从WIW读取,dataTable显示所有匹配文档的NoteID。 当我使用按钮刷新页面时,会出现“对象已被删除或回收”错误。
任何人都可以。让我看看我做错了什么?(可能还有,如何正确操作)

问题是,Notes对象是不可序列化的。在部分刷新期间,在更新()方法之前执行getvists()方法。ViewEntryCollection是对视图的引用,该视图已被回收


如果您只想存储一些注释id,那么可以将它们存储在向量中。否则,每次都必须在getVisits()方法中调用update()方法。

问题是,Notes对象不可序列化。在部分刷新期间,在更新()方法之前执行getvists()方法。ViewEntryCollection是对视图的引用,该视图已被回收


如果您只想存储一些注释id,那么可以将它们存储在向量中。否则,每次都必须在getVisites()方法中调用update()方法。

Ahh,我明白了。谢谢你的解释啊,我明白了。谢谢你的解释