From 9a399756f92c483df4ca3cd56b719f64d7e79a1f Mon Sep 17 00:00:00 2001 From: Sebastian Sdorra Date: Thu, 4 Aug 2011 11:11:22 +0200 Subject: [PATCH 1/3] improve logging for issue 38 --- .../scm/template/FreemarkerTemplateHandler.java | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) diff --git a/scm-webapp/src/main/java/sonia/scm/template/FreemarkerTemplateHandler.java b/scm-webapp/src/main/java/sonia/scm/template/FreemarkerTemplateHandler.java index c90205f4bf..62702c71db 100644 --- a/scm-webapp/src/main/java/sonia/scm/template/FreemarkerTemplateHandler.java +++ b/scm-webapp/src/main/java/sonia/scm/template/FreemarkerTemplateHandler.java @@ -42,9 +42,11 @@ import freemarker.template.Configuration; import freemarker.template.Template; import freemarker.template.TemplateException; +import org.slf4j.Logger; import org.slf4j.LoggerFactory; import sonia.scm.ConfigurationException; +import sonia.scm.util.Util; //~--- JDK imports ------------------------------------------------------------ @@ -57,7 +59,6 @@ import java.util.Locale; import java.util.Map; import javax.servlet.ServletContext; -import org.slf4j.Logger; /** * @@ -97,6 +98,18 @@ public class FreemarkerTemplateHandler implements TemplateHandler String path = servletContext.getRealPath(DIRECTORY_TEMPLATES); + if (logger.isDebugEnabled()) + { + logger.debug("configure template handler for directory '{}'", + Util.nonNull(path)); + } + + if (path == null) + { + throw new ConfigurationException( + "could not resolve template handler path"); + } + configuration.setDirectoryForTemplateLoading(new File(path)); configuration.setEncoding(Locale.ENGLISH, ENCODING); } From 2662564e535523dceefad690c7080cac8ebb8bd0 Mon Sep 17 00:00:00 2001 From: Sebastian Sdorra Date: Thu, 4 Aug 2011 11:20:57 +0200 Subject: [PATCH 2/3] use setServletContextForTemplateLoading instead of setDirectoryForTemplateLoading, see issue #38 --- .../template/FreemarkerTemplateHandler.java | 30 +++---------------- 1 file changed, 4 insertions(+), 26 deletions(-) diff --git a/scm-webapp/src/main/java/sonia/scm/template/FreemarkerTemplateHandler.java b/scm-webapp/src/main/java/sonia/scm/template/FreemarkerTemplateHandler.java index 62702c71db..879efb049b 100644 --- a/scm-webapp/src/main/java/sonia/scm/template/FreemarkerTemplateHandler.java +++ b/scm-webapp/src/main/java/sonia/scm/template/FreemarkerTemplateHandler.java @@ -92,32 +92,10 @@ public class FreemarkerTemplateHandler implements TemplateHandler @Inject public FreemarkerTemplateHandler(ServletContext servletContext) { - try - { - configuration = new Configuration(); - - String path = servletContext.getRealPath(DIRECTORY_TEMPLATES); - - if (logger.isDebugEnabled()) - { - logger.debug("configure template handler for directory '{}'", - Util.nonNull(path)); - } - - if (path == null) - { - throw new ConfigurationException( - "could not resolve template handler path"); - } - - configuration.setDirectoryForTemplateLoading(new File(path)); - configuration.setEncoding(Locale.ENGLISH, ENCODING); - } - catch (IOException ex) - { - throw new ConfigurationException( - "could not create FreemarkerTemplateHandler", ex); - } + configuration = new Configuration(); + configuration.setServletContextForTemplateLoading(servletContext, + DIRECTORY_TEMPLATES); + configuration.setEncoding(Locale.ENGLISH, ENCODING); } //~--- methods -------------------------------------------------------------- From 84e23b3bf0ff313b7aef41886fa3fe2fffc009be Mon Sep 17 00:00:00 2001 From: Sebastian Sdorra Date: Thu, 4 Aug 2011 11:46:22 +0200 Subject: [PATCH 3/3] close branch issue-38