Freemarker寻找默认模板

时间:2012-01-17 19:43:19

标签: java html struts2 freemarker

我在struts.xml中通过struts.ui.templateDir设置了一个模板目录。现在,当我访问我的页面时,会出现一个java.io.FileNotFoundException,寻找一些我只能猜测Freemarker默认寻找的文件。

这是一个这样的文件:

java.io.FileNotFoundException: Template /WEB-INF/templates/simple/form-close.ftl not found.

我不希望找到此文件或我创建的模板以外的任何其他文件。有没有办法阻止Freemarker这样做?此外,该库的文档在哪里?我似乎找不到博客网站以外的任何东西......

1 个答案:

答案 0 :(得分:1)

基本上任何struts-tag都使用一个或多个* .ftl来向页面呈现特定标记(它们是必需的)。

你不能“删除”一些模板。如果要编写自己的模板,请将所有ftls从struts jar(templates.simple)复制到模板目录。然后替换要更改的ftls。

覆盖struts.xml大多数情况下都不是nessecary,你也可以通过struts.properties设置你的模板路径和标准主题。

### Standard UI theme
struts.ui.theme=xhtml
struts.ui.templateDir=template

更新您的评论:我想,您想提供自己的模板。但您也可以为struts标记指定'theme'属性,以便为任何标记更改单个ftl。

<s:select name="myName" theme="myTheme" />

然后创建你的select.ftl并将其添加到src / main / resources / template / myTheme下。