InvalidReferenceException with big data
Erwin Mueller <[email protected]>
| Newsgroups | gmane.comp.web.freemarker.user |
|---|---|
| Message-ID | <[email protected]> |
Hi, I have a small project of my own where I use the freemarker template library to generate Latex code which I use to generate Pdf files. I use this small template for a table (attachment I) All works good, if I have a small amount of data, but with some big data I get the exception (attachment II) I tested it with ca. 3000 entries, then I get the exception. Is there a way in freenode to have streams or other mechanism to use the templates with big amount of data? Right now I'm using a HashMap for the root node that contains a ArrayList that is used for the rows and columns. -- Erwin Mueller, [email protected] http://www.global-scaling-institute.de/ ------------------------------------------------------------------------------ ThinkGeek and WIRED's GeekDad team up for the Ultimate GeekDad Father's Day Giveaway. ONE MASSIVE PRIZE to the lucky parental unit. See the prize list and enter to win: http://p.sf.net/sfu/thinkgeek-promo _______________________________________________ FreeMarker-user mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/freemarker-user
atachmentI.template.txt
(text/plain, 359 B)
\begin{longtable}
<#compress>
{lllllll}
<#list columns as c>
${c}
<#if c_has_next>&</#if><#if ! c_has_next>\\</#if>
</#list>
</#compress>
<#compress>
\toprule
\endhead
<#list rows as row>
<#list row as column>
${column}
<#if column_has_next>&</#if><#if ! column_has_next>\\</#if>
</#list>
</#list>
\end{longtable}
</#compress>
atachmentII.trace.txt
(text/plain, 3.5 KB)
13/06/2010 10:13:59 PM freemarker.log.JDK14LoggerFactory$JDK14Logger error
SEVERE: Expression column is undefined on line 14, column 11 in longtable1.template.
Expression column is undefined on line 14, column 11 in longtable1.template.
The problematic instruction:
----------
==> ${column} [on line 14, column 9 in longtable1.template]
----------
Java backtrace for programmers:
----------
freemarker.core.InvalidReferenceException: Expression column is undefined on line 14, column 11 in longtable1.template.
at freemarker.core.TemplateObject.assertNonNull(TemplateObject.java:124)
at freemarker.core.Expression.getStringValue(Expression.java:118)
at freemarker.core.Expression.getStringValue(Expression.java:93)
at freemarker.core.DollarVariable.accept(DollarVariable.java:76)
at freemarker.core.Environment.visit(Environment.java:210)
at freemarker.core.MixedContent.accept(MixedContent.java:92)
at freemarker.core.Environment.visit(Environment.java:210)
at freemarker.core.IteratorBlock$Context.runLoop(IteratorBlock.java:179)
at freemarker.core.Environment.visit(Environment.java:417)
at freemarker.core.IteratorBlock.accept(IteratorBlock.java:102)
at freemarker.core.Environment.visit(Environment.java:210)
at freemarker.core.IteratorBlock$Context.runLoop(IteratorBlock.java:179)
at freemarker.core.Environment.visit(Environment.java:417)
at freemarker.core.IteratorBlock.accept(IteratorBlock.java:102)
at freemarker.core.Environment.visit(Environment.java:210)
at freemarker.core.MixedContent.accept(MixedContent.java:92)
at freemarker.core.Environment.visit(Environment.java:210)
at freemarker.core.Environment.visit(Environment.java:299)
at freemarker.core.CompressedBlock.accept(CompressedBlock.java:73)
at freemarker.core.Environment.visit(Environment.java:210)
at freemarker.core.MixedContent.accept(MixedContent.java:92)
at freemarker.core.Environment.visit(Environment.java:210)
at freemarker.core.Environment.process(Environment.java:190)
at freemarker.template.Template.process(Template.java:237)
at com.globalscalingsoftware.latexreport.latexcode.freemarker.internal.FreeMarkerTemplate.processTemplateWithException(FreeMarkerTemplate.java:29)
at com.globalscalingsoftware.latexreport.latexcode.freemarker.internal.FreeMarkerTemplate.processTemplate(FreeMarkerTemplate.java:15)
at com.globalscalingsoftware.latexreport.latexcode.freemarker.internal.FreeMarkerSnippetGenerator.generateSnippersCode(FreeMarkerSnippetGenerator.java:43)
at com.globalscalingsoftware.latexreport.latexcode.freemarker.internal.FreeMarkerSnippetGenerator.generateCode(FreeMarkerSnippetGenerator.java:31)
at com.globalscalingsoftware.latexreport.latexcode.freemarker.internal.FreeMarkerLayoutGenerator$1.append(FreeMarkerLayoutGenerator.java:46)
at com.globalscalingsoftware.latexreport.latexcode.freemarker.internal.DocumentAppender$Environment.appendEnvironment(DocumentAppender.java:31)
at com.globalscalingsoftware.latexreport.latexcode.freemarker.internal.DocumentAppender$Environment.append(DocumentAppender.java:22)
at com.globalscalingsoftware.latexreport.latexcode.freemarker.internal.FreeMarkerLayoutGenerator.generateCode(FreeMarkerLayoutGenerator.java:52)
at com.globalscalingsoftware.latexreport.latexcode.freemarker.internal.FreeMarkerReportGenerator.generateCode(FreeMarkerReportGenerator.java:24)
at com.globalscalingsoftware.latexreport.clitool.ReportsManagerHandler$1.run(ReportsManagerHandler.java:60)
at java.lang.Thread.run(Thread.java:636)