Я пытаюсь перебрать ленивую коллекцию в ORMLite для Android, и следующее выдает исключение IllegalStateException. В документах указано, что я должен использовать закрываемый итератор, но он все еще не работает. Я также видел пример кода с использованием закрываемого итератора, но он не помещал его в al oop, поэтому я не уверен, что я здесь что-то не так делаю.
Iterator<Supplier> itr = simpleDao.iterator();
while(itr.hasNext()) {
Supplier s = itr.next();
supplierList.add(s);
}
for(Supplier s: supplierList) {
CloseableIterator<Product> itr2 = s.getProducts().closeableIterator();
try {
while(itr2.hasNext()) {
Product p = itr2.next();
System.out.println(itr2.next().getProductCode());
}
} finally {
itr2.close();
}
}