使用FreeMarker生成数据,模板明明没错却一直报错“The following has evaluated to null or missing:”

Posted blackstring

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了使用FreeMarker生成数据,模板明明没错却一直报错“The following has evaluated to null or missing:”相关的知识,希望对你有一定的参考价值。

今天使用FreeMarker生成数据时一直报错,错误信息是“The following has evaluated to null or missing:”,告知我找不到值。

但是我再三确认,这些属性的值都是正常的,也就是说某些原因造成FreeMarker无法读取到这些值。困扰了我将近两个小时后,经过各种尝试后,终于被我发现了原因:

FreeMarker读取数据的时候不支持属性名首字母大写(但是支持变量名全大写的属性)!将变量名全部改为小写后,数据就正常生成了。

因为我也只是个初学者(事实上我昨天才知道FreeMarker),不太清楚底层的原理,不过我想可能是FreeMarker在获取属性值的时候使用的是(例)“name”而不是“Name”,这才导致无法获取到值。

 

以上是关于使用FreeMarker生成数据,模板明明没错却一直报错“The following has evaluated to null or missing:”的主要内容,如果未能解决你的问题,请参考以下文章

FreeMarker:Java模板引擎

freemarker

freemarker模板加载TemplateLoader常见方式

Java 使用模板生成 Word 文件---基于 Freemarker 模板框架

FreeMarker语言

FreeMarker与Thymeleaf