FreeMarker template error!
Expression tag is undefined on line 158, column 42 in WEB-INF/user_base/dxs_gov_cn_www/template/zlpt/nbbp/nbbpedit.html.
The problematic instruction:
----------
==> ${tag.lbmc} [on line 158, column 40 in WEB-INF/user_base/dxs_gov_cn_www/template/zlpt/nbbp/nbbpedit.html]
-----------------------------------------------------------
页面代码:
[#list carveETagList as tag]
[#if tag.flbid=='0']
<tr>
<th>${tag.lbmc}:</th>
.... ........ .....
[/if>
[/#list]
-----------------------------------------------------------
原因:
后台调试carveETagList 数据有值,不为空,所以这不是空值造成的异常。
陈琳来把 [ ] 改为<> 就好了,因为此段代码的前面是freemark的标签式用<> 的,同一个页面中不能同时使用< > 和 [] 么 ?
查看FreeMarker_Manual_zh_CN.pdf 目录 4.5 替换(方括号)语法 ,确实有对此语法的说明,
这种替换语法(方括号)和默认语法(尖括号)在一个模板中是相互排斥的。那就是说,
整个模板要么全部使用替换语法,要么全部使用默认语法。如果模板使用了替换语法,那么
如<#if ...>这样的部分就会被算作是静态文本,而不是 FTL 标签了。类似地,如果模板
使用默认语法,那么如[#if ...]这样的也会被算作是静态文本,而不是 FTL 标签。