Closed GoogleCodeExporter closed 8 years ago
Hi Stefan,
It seems that it's the same issue than
http://code.google.com/p/xdocreport/issues/detail?id=18
where you don't want use Developer model. If you see this isuee, you will see
you can do the same thing with Map object :
----------------------------------------
List<Map<String,String>> developers = new ArrayList<Map<String,String>>();
Map<String,String> developer1 = new HashMap<String, String>();
developer1.put("Name", "ZERR");
developer1.put("LastName", "Angelo");
developer1.put("Mail", "angelo.zerr@gmail.com");
context.put("developers", developers);
----------------------------------------
Instead of :
----------------------------------------
List<Developer> developers = new ArrayList<Developer>();
developers.add(new Developer("ZERR", "Angelo","angelo.zerr@gmail.com"));
context.put("developers", developers);
----------------------------------------
Is it your need?
Regards Angelo
Original comment by angelo.z...@gmail.com
on 1 Aug 2011 at 1:45
Hello Angelo,
Thank you for your fast reply.
I changed my code to:
List<Map<String, String>> developers = new ArrayList<Map<String, String>>();
Map<String, String> developer1 = new HashMap<String, String>();
developer1.put("Name", "ZERR");
developer1.put("LastName", "Angelo");
developer1.put("Mail", "angelo.zerr@gmail.com");
Map<String, String> developer2 = new HashMap<String, String>();
developer2.put("Name", "Stefan");
developer2.put("LastName", "Jans");
developer2.put("Mail", "stefan.jansss@gmail.com");
developers.add(developer1);
developers.add(developer2);
context.put("developers", developers);
But I'm still getting the error:
1-aug-2011 16:21:08 freemarker.log.JDK14LoggerFactory$JDK14Logger error
SEVERE: Template processing error: "Expression any is undefined on line 1,
column 17 in
fr.opensagres.xdocreport.document.docx.DocXReport@1e97676!word/document.xml."
Expression any is undefined on line 1, column 17 in
fr.opensagres.xdocreport.document.docx.DocXReport@1e97676!word/document.xml.
The problematic instruction:
----------
==> ${item_developers.name} escaped ${item_developers.name?xml} [on line 2,
column 3577 in
fr.opensagres.xdocreport.document.docx.DocXReport@1e97676!word/document.xml]
----------
Java backtrace for programmers:
----------
freemarker.core.InvalidReferenceException: Expression any is undefined on line
1, column 17 in
fr.opensagres.xdocreport.document.docx.DocXReport@1e97676!word/document.xml.
at freemarker.core.TemplateObject.assertNonNull(TemplateObject.java:125)
at freemarker.core.Expression.getStringValue(Expression.java:118)
at freemarker.core.Expression.getStringValue(Expression.java:93)
at freemarker.core.StringBuiltins$StringBuiltIn._getAsTemplateModel(StringBuiltins.java:71)
at freemarker.core.Expression.getAsTemplateModel(Expression.java:89)
at freemarker.core.Expression.getStringValue(Expression.java:93)
at freemarker.core.DollarVariable.accept(DollarVariable.java:76)
at freemarker.core.Environment.visit(Environment.java:221)
at freemarker.core.MixedContent.accept(MixedContent.java:92)
at freemarker.core.Environment.visit(Environment.java:221)
at freemarker.core.IteratorBlock$Context.runLoop(IteratorBlock.java:179)
at freemarker.core.Environment.visit(Environment.java:428)
at freemarker.core.IteratorBlock.accept(IteratorBlock.java:102)
at freemarker.core.Environment.visit(Environment.java:221)
at freemarker.core.MixedContent.accept(MixedContent.java:92)
at freemarker.core.Environment.visit(Environment.java:221)
at freemarker.core.EscapeBlock.accept(EscapeBlock.java:84)
at freemarker.core.Environment.visit(Environment.java:221)
at freemarker.core.Environment.process(Environment.java:199)
at fr.opensagres.xdocreport.template.freemarker.FreemarkerTemplateEngine.process(FreemarkerTemplateEngine.java:126)
at fr.opensagres.xdocreport.template.freemarker.FreemarkerTemplateEngine.processWithCache(FreemarkerTemplateEngine.java:78)
at fr.opensagres.xdocreport.template.AbstractTemplateEngine.process(AbstractTemplateEngine.java:88)
at fr.opensagres.xdocreport.template.AbstractTemplateEngine.process(AbstractTemplateEngine.java:66)
at fr.opensagres.xdocreport.document.AbstractXDocReport.processTemplateEngine(AbstractXDocReport.java:593)
at fr.opensagres.xdocreport.document.AbstractXDocReport.process(AbstractXDocReport.java:397)
at fr.opensagres.xdocreport.document.AbstractXDocReport.process(AbstractXDocReport.java:365)
at docxandfreemarker.DocxFreeMarkerLiber.main(DocxFreeMarkerLiber.java:63)
fr.opensagres.xdocreport.core.XDocReportException:
freemarker.core.InvalidReferenceException: Expression any is undefined on line
1, column 17 in
fr.opensagres.xdocreport.document.docx.DocXReport@1e97676!word/document.xml.
at fr.opensagres.xdocreport.template.freemarker.FreemarkerTemplateEngine.process(FreemarkerTemplateEngine.java:128)
at fr.opensagres.xdocreport.template.freemarker.FreemarkerTemplateEngine.processWithCache(FreemarkerTemplateEngine.java:78)
at fr.opensagres.xdocreport.template.AbstractTemplateEngine.process(AbstractTemplateEngine.java:88)
at fr.opensagres.xdocreport.template.AbstractTemplateEngine.process(AbstractTemplateEngine.java:66)
at fr.opensagres.xdocreport.document.AbstractXDocReport.processTemplateEngine(AbstractXDocReport.java:593)
at fr.opensagres.xdocreport.document.AbstractXDocReport.process(AbstractXDocReport.java:397)
at fr.opensagres.xdocreport.document.AbstractXDocReport.process(AbstractXDocReport.java:365)
at docxandfreemarker.DocxFreeMarkerLiber.main(DocxFreeMarkerLiber.java:63)
Caused by: freemarker.core.InvalidReferenceException: Expression any is
undefined on line 1, column 17 in
fr.opensagres.xdocreport.document.docx.DocXReport@1e97676!word/document.xml.
at freemarker.core.TemplateObject.assertNonNull(TemplateObject.java:125)
at freemarker.core.Expression.getStringValue(Expression.java:118)
at freemarker.core.Expression.getStringValue(Expression.java:93)
at freemarker.core.StringBuiltins$StringBuiltIn._getAsTemplateModel(StringBuiltins.java:71)
at freemarker.core.Expression.getAsTemplateModel(Expression.java:89)
at freemarker.core.Expression.getStringValue(Expression.java:93)
at freemarker.core.DollarVariable.accept(DollarVariable.java:76)
at freemarker.core.Environment.visit(Environment.java:221)
at freemarker.core.MixedContent.accept(MixedContent.java:92)
at freemarker.core.Environment.visit(Environment.java:221)
at freemarker.core.IteratorBlock$Context.runLoop(IteratorBlock.java:179)
at freemarker.core.Environment.visit(Environment.java:428)
at freemarker.core.IteratorBlock.accept(IteratorBlock.java:102)
at freemarker.core.Environment.visit(Environment.java:221)
at freemarker.core.MixedContent.accept(MixedContent.java:92)
at freemarker.core.Environment.visit(Environment.java:221)
at freemarker.core.EscapeBlock.accept(EscapeBlock.java:84)
at freemarker.core.Environment.visit(Environment.java:221)
at freemarker.core.Environment.process(Environment.java:199)
at fr.opensagres.xdocreport.template.freemarker.FreemarkerTemplateEngine.process(FreemarkerTemplateEngine.java:126)
... 7 more
Process exited with exit code 0.
Original comment by stefan.j...@gmail.com
on 1 Aug 2011 at 2:23
Yes it's normal because you are using Freemarker template engien (my sampel was
for Velocity). developers.Name cannot work, its developers.name (lowercase). So
try with this code:
----------------------------------------
List<Map<String, String>> developers = new ArrayList<Map<String, String>>();
Map<String, String> developer1 = new HashMap<String, String>();
developer1.put("name", "ZERR");
developer1.put("lastName", "Angelo");
developer1.put("mail", "angelo.zerr@gmail.com");
developers.add(developer1);
Map<String, String> developer2 = new HashMap<String, String>();
developer2.put("name", "Stefan");
developer2.put("lastName", "Jans");
developer2.put("mail", "stefan.jansss@gmail.com");
developers.add(developer2);
context.put("developers", developers);
----------------------------------------
Regards Angelo
Original comment by angelo.z...@gmail.com
on 1 Aug 2011 at 2:30
Oh I'm sorry for my mistake..
Thank you very much!
Original comment by stefan.j...@gmail.com
on 1 Aug 2011 at 2:37
Original comment by angelo.z...@gmail.com
on 5 Aug 2011 at 1:37
Original issue reported on code.google.com by
stefan.j...@gmail.com
on 1 Aug 2011 at 1:36