FreeMarker template error

在使用freemarker的过程当中常常会见到以下错误:html

Xml代码   收藏代码
  1. 11 十二月 2015 15:53:09,674 ERROR freemarker.runtime:98 - Error executing FreeMarker template  
  2. FreeMarker template error:  
  3. The following has evaluated to null or missing:  
  4. ==> sex  [in template "freemarker3.html" at line 10, column 3]  
  5.   
  6. Tip: If the failing expression is known to be legally null/missing, either specify a default value with myOptionalVar!myDefault, or use <#if myOptionalVar??>when-present<#else>when-missing</#if>. (These only cover the last step of the expression; to cover the whole expression, use parenthessis: (myOptionVar.foo)!myDefault, (myOptionVar.foo)??  

模板代码以下:express

Html代码   收藏代码
  1. <!DOCTYPE html>  
  2. <html>  
  3. <head>  
  4. <meta charset="UTF-8">  
  5. <title>freemarker demo</title>  
  6. </head>  
  7. <body>  
  8. ${username} <br />  
  9. ${age}<br />  
  10. ${sex}  
  11. </body>  
  12. </html>  

 根本缘由: sex没有设置值,因此报错lua

解决方法:spa

在未声明的变量后面增长叹号xml

Html代码   收藏代码
  1. ${sex!}  

 也能够设置默认值,在叹号后面增长默认值htm

Html代码   收藏代码
  1. ${sex!'abc'}