`
zhouchaofei2010
  • 浏览: 1103043 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

freeMarker template error! Expression tag is undefined

 
阅读更多

 

 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 标签。

 

 

 

 

 

 


 

分享到:
评论

相关推荐

    freemarker 教程 使用手册

    Freemarker是一个强大的模板引擎,常用于Web应用中的视图层开发,与Java后端框架如Spring、Struts等结合紧密。本教程手册基于版本2.3.16,将全面解析其核心概念、语法特性及实际应用。 一、Freemarker基础 1. 模板...

    springboot如何使用Freemarker模版引擎

    spring.freemarker.template-loader-path=classpath:/templates/ ``` 或 ```yaml spring: freemarker: template-loader-path: classpath:/templates/ ``` 2. **创建Freemarker模板文件** - 在`src/main/...

    freemarker

    通过设置`setClassForTemplateLoading`方法,指定了模板文件的加载位置,通常这些模板文件是以`.ftl`(Freemarker Template Language)扩展名存储的。 #### 2. 获取Template对象 在配置好`Configuration`后,接...

    FreeMarkerTemplateDemo

    4. **代码生成逻辑**:这通常是Java代码的一部分,负责创建数据模型,加载模板,并调用FreeMarker的`Template`类的`process`方法,将数据模型和模板结合,生成最终的代码。 在描述中提到的CSDN博客文章"42193235...

    freemarker 自定义freeMarker标签

    1. 创建自定义指令类:你需要创建一个继承自`freemarker.template.TemplateDirectiveModel`的Java类。这个类将定义你的自定义标签的行为,包括如何处理输入参数,如何处理模板模型数据,以及如何生成输出。 2. 注册...

    Java freemarker 模板生成word动态表格

    6. **模板与数据合并**:使用FreeMarker的`Template`类加载模板文件,然后用`process`方法将数据模型应用到模板上,生成最终的Word文档。 7. **POM.xml**:在Maven项目中,`pom.xml`文件是项目的配置文件,用于定义...

    freemarker-2.3.23jar

    模板文件的扩展名通常是`.ftl`(FreeMarker Template Language)。 2. **数据模型**:Freemarker的数据模型是基于Java对象的。它可以处理各种类型的数据,如字符串、数字、日期、列表、地图等。开发者可以通过`...

    用Freemarker生成word文档

    import freemarker.template.Template; import java.io.*; import java.util.HashMap; import java.util.Map; public class CreateDoc { private Configuration configuration = null; public CreateDoc() ...

    FreeMarker导出模板,以及基本代码

    - **表达式**: `${expression}` 可以是任何Java表达式,FreeMarker会计算其结果并输出。 - **控制结构**:如 `&lt;#if&gt;...&lt;#else&gt;...&lt;#endif&gt;` 和 `&lt;#foreach&gt;...&lt;#break&gt;...&lt;#continue&gt;`,用于条件判断和循环。 - ...

    freemarker 简单项目示例

    - `testTemplate.ftl`可能是一个简单的示例模板,包含FTL语法,如`${expression}`用来输出表达式的值,`&lt;#if&gt;`、`&lt;#foreach&gt;`等用于逻辑控制。 4. **数据模型** - 数据模型是Freemarker模板渲染时的数据来源,...

    freemarker-2.3.28.jar

    1. **模板语言FTL**: Freemarker使用的模板语言叫做FreeMarker Template Language (FTL),它是一种声明式的、非过程式的语言。FTL文件包含了一系列的指令和表达式,用于生成最终输出。例如,`&lt;#if&gt;`、`&lt;#foreach&gt;`、...

    freemarker语法完整版

    ### Freemarker语法完整版知识点详解 #### A. 概念 **1. Scalars(标量)** - **字符串**: 由单引号或双引号括起来的文本。 - **数字**: 直接使用数值。 - **日期**: 通常从数据模型中获取。 - **布尔值**: `...

    freemarker中文手册,轻松掌握!!

    Freemarker是一个强大的模板引擎,常用于Web应用中的视图层开发,比如Java Web项目。它允许开发者使用简单的模板语言来动态生成HTML或其他文本格式的文档。本手册将帮助你全面理解和熟练运用Freemarker。 1. **...

    freemarker生成doc方案

    在这个文件中,你可以使用Freemarker语法来定义文档的结构和内容,比如使用`&lt;#if&gt;`、`&lt;#foreach&gt;`等控制结构,以及`${expression}`来插入变量。 2. **构建数据模型**: 在Java代码中,你需要创建一个Map对象,用于...

    freemarker操作手册-完整freemarker教程

    - 模板:使用FTL(Freemarker Template Language)编写,包含静态文本和变量/指令。 4. **模板指令** - `#assign`:定义一个局部变量。 - `#macro`:定义宏,可重用的模板片段。 - `#import`:导入其他模板或库...

    freemarker解析成pdf

    1. **创建模板**:在Freemarker中,我们需要创建一个`.ftl`(Freemarker Template Language)文件,其中包含静态文本和动态占位符。动态占位符由${}或#{}包裹,用于插入数据模型中的值。例如,`${title}&lt;/h1&gt;`会将...

    FreeMarker

    FreeMarker 的模板是用 FreeMarker Template Language (FTL) 编写的,这是一种简单且专门化的语言。模板通常用来决定如何呈现数据,而在模板外部,则关注要展示哪些数据。例如,可以利用 SQL 查询和业务逻辑准备数据...

    freemarker入门demo

    FTL是Freemarker Template Language的缩写,它是一种声明式的标记语言,用于定义如何将数据模型渲染成可输出的文本。在FTL文件中,你可以插入静态文本、控制结构(如循环和条件语句)以及对数据模型的引用。 在我们...

    FreeMarker手册-Freemarker 2.3.18

    FreeMarker的模板继承允许创建基模板(base template),子模板可以继承并覆盖基模板的部分内容,从而实现代码重用。`&lt;#import&gt;`指令用于导入其他模板,方便共享变量和宏。 5. **内置函数和操作符** FreeMarker...

Global site tag (gtag.js) - Google Analytics