java - Freemarker解析异常: "Unknown directive: #outputformat"

标签 java xml freemarker

我使用 Freemarker 2.3.23,我想打印 XML 的字符串表示形式。 所以,我找到了outputformat指示。但是当我尝试使用它时,出现以下 ParseException:

Unknown directive: #outputformat. Help (latest version): http://freemarker.org/docs/ref_directive_alphaidx.html; you're using FreeMarker 2.3.23.
at freemarker.core.TokenMgrError.toParseException(TokenMgrError.java:247)
at freemarker.template.Template.<init>(Template.java:215)
at freemarker.cache.TemplateCache.loadTemplate(TemplateCache.java:495)
at freemarker.cache.TemplateCache.getTemplate(TemplateCache.java:409)
at freemarker.cache.TemplateCache.getTemplate(TemplateCache.java:261)
at freemarker.template.Configuration.getTemplate(Configuration.java:1786)
at freemarker.template.Configuration.getTemplate(Configuration.java:1646)

我的 template.ftlh 文件的片段:

<div class="well">
    <#outputformat 'XML'>${testCase.response}</#outputformat>
</div>

最佳答案

outputformat 至少需要 2.3.24 .

请注意,您应该只需要 <#outputformat ...>很少,如果有的话。通常,您只需将 FreeMarker 配置为默认在任何地方使用 XML 输出格式即可。如果不同的模板需要不同的输出格式,那么您可以将输出格式与模板文件扩展名或其他名称模式相关联。如果这样还不够灵活,您可以使用 <#ftl output_format='XML'> header 。

关于java - Freemarker解析异常: "Unknown directive: #outputformat",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40192776/

相关文章:

java - 复选框网格代表多对多数据库关系;从网络表单到数据库的最佳方式

java - Scala 点语法(或缺乏)

Java - 从多个对象中读取

xml - xsl 参数默认字符串不能以句点开头

java - Freemarker 获取当前时间戳

javascript - 如何在 NetSuite freemarker 模板中按空格分割字符串?

java - 在 Spring MVC 中显示来自 Controller 的 View (所有员工的列表)

java - 如何为 gmaven 插件设置 JDK 版本?

java - 选择器 : "<item> tag requires a ' drawable' attribute"

淡入透明的Android渐变背景