Benefits of MVC

What is FreeMarker

FreeMarker Features

Two ways to use FreeMarker in VIVO

Using FreeMarker

public class AboutController extends FreemarkerHttpServlet {
	
	private static final String TEMPLATE_DEFAULT = "about.ftl";
    
    @Override
    protected ResponseValues processRequest(VitroRequest vreq) {
        ApplicationBean application = vreq.getAppBean();
        
        Map<String, Object> body = new HashMap<String, Object>();
        body.put("aboutText", application.getAboutText());
        body.put("acknowledgeText", application.getAcknowledgeText());
        
        return new TemplateResponseValues(TEMPLATE_DEFAULT, body);
    }

    @Override
    protected String getTitle(String siteName, VitroRequest vreq) {
    	return "About " + siteName;
    }

}

Resources

Tools