[
https://issues.apache.org/jira/browse/WW-3765?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13249178#comment-13249178
]
Vijayakannan commented on WW-3765:
----------------------------------
The problem with theme.properties
Getting File not Exception if i tried to load the struts default templates from
application path "WEB-INF/template"
SEVERE: Could not open template
java.io.FileNotFoundException: Template /WEB-INF/template/xhtml/a.ftl not found.
at freemarker.template.Configuration.getTemplate(Configuration.java:489)
at freemarker.template.Configuration.getTemplate(Configuration.java:452)
at
org.apache.struts2.components.template.FreemarkerTemplateEngine.renderTemplate(FreemarkerTemplateEngine.java:96)
at org.apache.struts2.components.UIBean.mergeTemplate(UIBean.java:559)
at
org.apache.struts2.components.ClosingUIBean.start(ClosingUIBean.java:59)
at org.apache.struts2.components.Anchor.start(Anchor.java:132)
I have updated this in https://issues.apache.org/jira/browse/WW-3764 WW-3764
issue too and we can track it @ WW-3764 itself.
Thanks a lot
> Improve performance of FreeMarker Template caching
> --------------------------------------------------
>
> Key: WW-3765
> URL: https://issues.apache.org/jira/browse/WW-3765
> Project: Struts 2
> Issue Type: Improvement
> Components: Integration
> Affects Versions: 2.3.1
> Environment: Tomcat v7.0
> Reporter: Vijayakannan
> Assignee: Lukasz Lenart
> Priority: Critical
> Labels: freemarker-template-reload-required
> Fix For: 2.3.2
>
> Original Estimate: 24h
> Remaining Estimate: 24h
>
> Struts2 having option to enable the freemarker template caching with
> reloading the template with time delay which helps us to improve the
> performance.
> In our application we are using the strut2 in-built UI freemarker template.
> We need the caching option without reloading the templates after the specific
> time delay.
> Caching option is more powerful if we have an option for enabling\disabling
> the reload
> Proposed Solution
> Struts.xml
> <constant name="struts.freemarker.templatesCache.required" value="true"/>
> FreeMarkerManager.java
> protected boolean templateUpdateRequired;
> @Inject(STRUTS_FREEMARKER_TEMPLATES_RELOAD_REQUIRED)
> public void setTemplateUpdateRequired(String templateUpdateRequired) {
> this.templateUpdateRequired
> ="true".equals(templateUpdateRequired);
> }
> Update createConfiguration(ServletContext servletContext) Method
> configuration.setSetting(Configuration. TEMPLATE_RELOAD_ REQUIRED _KEY,
> templateUpdateRequired);
> Configuration.java
> String TEMPLATE_RELOAD_ REQUIRED _KEY= "template_reload_required";
> TemplateCache.Java
> protected boolean templateUpdateRequired;
> Update getTemplate(TemplateLoader loader, String name, Locale locale, String
> encoding, boolean parse) Method
> ...
> if (templateUpdateRequired !=false && now - cachedTemplate.lastChecked <
> delay) {
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators:
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira