Showing posts with label freemarker. Show all posts
Showing posts with label freemarker. Show all posts

9/03/2008

struts2, freemarker: load template from memory



1. register in struts.xml


2. Extends FreeMarkerManager
public class FreeMarkerManager extends FreemarkerManager {
protected TemplateLoader getTemplateLoader(ServletContext servletContext) {
FormTemplateLoader templateLoader = new FormTemplateLoader();

return new MultiTemplateLoader(new TemplateLoader[]{
templateLoader,
new WebappTemplateLoader(servletContext),
new StrutsClassTemplateLoader()
});
}
}

3. Implement TemplateLoader
public class FormTemplateLoader implements TemplateLoader {
public Object findTemplateSource(String name) {
// getTemplates() returns map containing template list with template name as key
source = (String) getTemplates().get(name);
lastModified = System.currentTimeMillis();
return source;
}

...
}