diff --git a/src/main/java/com/jfinal/kit/TplKit.java b/src/main/java/com/jfinal/kit/TplKit.java index 1994535..bfcbc2f 100644 --- a/src/main/java/com/jfinal/kit/TplKit.java +++ b/src/main/java/com/jfinal/kit/TplKit.java @@ -25,6 +25,8 @@ import com.jfinal.template.Engine; import com.jfinal.template.Template; import com.jfinal.template.source.FileSource; import com.jfinal.template.source.ISource; +import com.jfinal.template.stat.Location; +import com.jfinal.template.stat.ParseException; import java.io.File; import java.io.FileFilter; @@ -32,6 +34,7 @@ import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Map; +import java.util.logging.Logger; /** * SqlKit @@ -54,6 +57,7 @@ public class TplKit { public static TplKit use(String configName) { return use(configName, false); } + public static synchronized TplKit use(String configName, boolean devMode) { TplKit tplKit = kitMap.get(configName); if (tplKit == null) { @@ -134,10 +138,15 @@ public class TplKit { public synchronized void parseTplTemplate() { Map sqlTemplateMap = new HashMap(512, 0.5F); for (TplSource ss : tplSourceList) { - Template template = ss.isFile() ? engine.getTemplate(ss.file) : engine.getTemplate(ss.source); - Map data = new HashMap(); - data.put(SQL_TEMPLATE_MAP_KEY, sqlTemplateMap); - template.renderToString(data); + String fileName = ss.isFile() ? ss.file : ((FileSource) ss.source).getFinalFileName(); + try { + Template template = ss.isFile() ? engine.getTemplate(ss.file) : engine.getTemplate(ss.source); + Map data = new HashMap<>(); + data.put(SQL_TEMPLATE_MAP_KEY, sqlTemplateMap); + template.renderToString(data); + } catch (Exception e) { + throw new RuntimeException(String.format("%s parse error", fileName), e); + } } this.sqlTemplateMap = sqlTemplateMap; }