Я использую xe: objectData как источник данных для xp: dataTable. objectData1 использует некоторый код Java для извлечения всех документов из представления, соответствующего ключу (имя пользователя). Код Java выглядит следующим образом:xe: objectData - Объект удален или переработан
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 имеет следующий код
Когда я сначала загрузить страницу, данные считываются из wiew и DataTable отображает NoteIDs всех соответствующих документов , Когда я обновляю страницу с помощью кнопки, я получаю сообщение об ошибке «Объект был удален или переработан». Может кто-нибудь pls. показать мне, что я делаю неправильно? (и, возможно, как это сделать правильно)
Ах, я вижу. Спасибо за объяснение –