From 84573be584af62197a7c81f79838e73618c73f9a Mon Sep 17 00:00:00 2001 From: James Date: Tue, 19 Mar 2019 16:25:33 +0800 Subject: [PATCH] enjoy 3.7 release ^_^ --- src/main/java/com/jfinal/template/expr/ast/FieldKit.java | 4 ++++ src/main/java/com/jfinal/template/expr/ast/MethodKit.java | 4 ++++ src/main/java/com/jfinal/template/source/ClassPathSource.java | 2 +- src/main/java/com/jfinal/template/stat/ast/Include.java | 2 +- 4 files changed, 10 insertions(+), 2 deletions(-) diff --git a/src/main/java/com/jfinal/template/expr/ast/FieldKit.java b/src/main/java/com/jfinal/template/expr/ast/FieldKit.java index 84f1558..10df81d 100644 --- a/src/main/java/com/jfinal/template/expr/ast/FieldKit.java +++ b/src/main/java/com/jfinal/template/expr/ast/FieldKit.java @@ -133,6 +133,10 @@ public class FieldKit { getters = ret.toArray(new FieldGetter[ret.size()]); } + + public static void clearCache() { + fieldGetterCache.clear(); + } } diff --git a/src/main/java/com/jfinal/template/expr/ast/MethodKit.java b/src/main/java/com/jfinal/template/expr/ast/MethodKit.java index 708feb5..b1cdce6 100644 --- a/src/main/java/com/jfinal/template/expr/ast/MethodKit.java +++ b/src/main/java/com/jfinal/template/expr/ast/MethodKit.java @@ -115,6 +115,10 @@ public class MethodKit { forbiddenMethods.remove(methodName); } + public static void clearCache() { + methodCache.clear(); + } + public static MethodInfo getMethod(Class targetClass, String methodName, Object[] argValues) { Class[] argTypes = getArgTypes(argValues); Long key = getMethodKey(targetClass, methodName, argTypes); diff --git a/src/main/java/com/jfinal/template/source/ClassPathSource.java b/src/main/java/com/jfinal/template/source/ClassPathSource.java index 4a5ed80..8b4a3a0 100644 --- a/src/main/java/com/jfinal/template/source/ClassPathSource.java +++ b/src/main/java/com/jfinal/template/source/ClassPathSource.java @@ -64,7 +64,7 @@ public class ClassPathSource implements ISource { this.classLoader = getClassLoader(); this.url = classLoader.getResource(finalFileName); if (url == null) { - throw new IllegalArgumentException("File not found : \"" + finalFileName + "\""); + throw new IllegalArgumentException("File not found in CLASSPATH or JAR : \"" + finalFileName + "\""); } processIsInJarAndlastModified(); diff --git a/src/main/java/com/jfinal/template/stat/ast/Include.java b/src/main/java/com/jfinal/template/stat/ast/Include.java index f322e86..6f3ce74 100644 --- a/src/main/java/com/jfinal/template/stat/ast/Include.java +++ b/src/main/java/com/jfinal/template/stat/ast/Include.java @@ -69,7 +69,7 @@ public class Include extends Stat { Expr expr = exprList.getExpr(0); if (expr instanceof Const && ((Const)expr).isStr()) { } else { - throw new ParseException("The first parameter of #include directive must be String", location); + throw new ParseException("The first parameter of #include directive must be String, or use the #render directive", location); } // 其它参数必须为赋值表达式 if (len > 1) {