E
ezhov
continue;
Ссылка скрыта от гостей
и итерирование коллекции не происходит
к тому же - в java надо делать recycle неиспользуемым объектам нотуса (это для избежания мемориликов)
Вы имеете ввиду так как чуть выхе предлагали сделать ?:
<!--shcode--><pre><code class='java'>private lotus.domino.Document findByDepID1(String depID) throws NotesException, IOException {
if(depID==null || depID.equals("")){
log("findByDepID1: depID is Nothing or Empty");
return null;
}
if(view1==null){
log("findByDepID1: view1 is Nothing");
return null;
}
log("findByDepID1: depID = " + depID);
DocumentCollection dc = view1.getAllDocumentsByKey(depID);
if(dc.getCount()==0) {
log("findByDepID1: Collection <dc> by key depID is empty !");
dc.recycle;
return null;
}
boolean isMoreThanOne = false;
lotus.domino.Document tmpdoc = null;
lotus.domino.Document doc = dc.getFirstDocument();
while (doc!=null) {
if (!doc.isDeleted()) {
if (tmpdoc==null){
tmpdoc = doc;
}else{
isMoreThanOne = false;
break;
}
}
doc = dc.getNextDocument(doc);
}
if (isMoreThanOne) {
if (tmpdoc!=null) tmpdoc.recycle;
if (doc!=null) doc.recycle;
if (dc!=null) dc.recycle;
log("findByDepID1: There are more than one departament in DB with id = " + depID);
throw new RuntimeException("Error. There are more than one departament in DB with id = " + depID);
}else{
if (tmpdoc==null){
if (doc!=null) doc.recycle;
if (dc!=null) dc.recycle;
log("findByDepID1: There is no available(not conflict) doc with id = " + depID);
return null;
}else{
if (dc!=null) dc.recycle;
return tmpdoc;
}
}
}[/CODE]