У меня есть требование перебрать большое количество записей, используя итератор списка сущностей в Freemarker. Но при использовании рекурсивного макроса он выдает ошибку StackOverflow, когда достигает только 1000 записей. Ниже приведен фрагмент кода для того же.
<#macro recurseTest value>
${value.partyId!}
${value.firstName!}
${value.lastName!}
<#local tmp = eli.next()!/>
<#if tmp?has_content>
<@recurseTest tmp/>
</#if>
</#macro>
<#assign eli = EntityQuery.use(delegator).from("Person").queryIterator()/>
<br>
<@recurseTest eli.next()!/>
${eli.close()}