struts2和freemarker模板

时间:2011-05-12 06:30:41

标签: java struts2 freemarker

我在我的网络应用程序上使用struts2,在一个jsp文件中,我使用“iterator”在表单中显示3个arraylist。

当我用tomcat启动我的应用程序时,一切正常。但我想让它适用于websphere6.1,但是当我现在启动它时,页面需要20-30秒才能显示,而tomcat则不到1秒。

这是我在websphere控制台上的日志:

  

(freemarker.cache 81)无法在缓存中找到模板,创建新模板; id = [template / simple / form.ftl [fr_FR,UTF-8,parsed]]

在页面出现之前,我有近9000行。

我尝试用prop:

创建一个文件“freemarker.properties”
template_update_delay=60000

还试图在我的源根目录中提取“模板/简单”,在WEB-INF上......没有!

你知道吗?

1 个答案:

答案 0 :(得分:1)

  

无法在缓存中找到模板

模板文件夹应复制到WEB_APP root而不是WEB-INF 我的建议:将模板文件夹重命名为templates,以区别于默认值。

<constant name="struts.ui.templateDir" value="templates" />
<constant name="struts.ui.theme" value="simple" />

请参阅Struts2的Performance tuning

  1. 关闭日志记录和devMode
    确保关闭Freemarker Logging(特别是Freemarker生成大量日志记录)。

  2. 尝试使用Freemarker等效项而不是使用JSP标记
    <s:property value="foo"/>应替换为${foo}(类型转换除外),对迭代器进行良好的性能增强。