From 9b51a62597487073b54aa27cdd059828ebfcb2ac Mon Sep 17 00:00:00 2001 From: Helius <wangdoubleone@gmail.com> Date: Fri, 08 Jul 2022 19:19:47 +0800 Subject: [PATCH] ĺ synchronized --- src/main/java/com/xcong/farmer/cms/core/node/AttrNode.java | 10 +++++++--- 1 files changed, 7 insertions(+), 3 deletions(-) diff --git a/src/main/java/com/xcong/farmer/cms/core/node/AttrNode.java b/src/main/java/com/xcong/farmer/cms/core/node/AttrNode.java index 7d9cd18..e43cfca 100644 --- a/src/main/java/com/xcong/farmer/cms/core/node/AttrNode.java +++ b/src/main/java/com/xcong/farmer/cms/core/node/AttrNode.java @@ -8,6 +8,7 @@ import com.xcong.farmer.cms.core.tag.TagsEnum; import com.xcong.farmer.cms.core.template.Configuration; import com.xcong.farmer.cms.core.template.TemplateConfiguration; +import com.xcong.farmer.cms.utils.GroovySingleton; import groovy.lang.Binding; import groovy.lang.GroovyShell; import org.apache.commons.text.StringSubstitutor; @@ -145,6 +146,7 @@ } } + runDataInject(); } @@ -212,7 +214,8 @@ // } // } - Binding binding = new Binding(); + GroovyShell groovyShell = GroovySingleton.getSingleton(); + Binding binding = groovyShell.getContext(); for (Map.Entry<String, Object> entry : this.parserData.entrySet()) { String fieldKey = entry.getKey(); Map<String, Object> data = (Map<String, Object>) entry.getValue(); @@ -223,13 +226,14 @@ binding.setProperty("system", systemData); } - GroovyShell shell = new GroovyShell(binding); - Object evaluate = shell.evaluate(group); +// GroovyShell shell = new GroovyShell(binding); + Object evaluate = groovyShell.evaluate(group); if (evaluate == null) { targetData.put(group, ""); } else { targetData.put(group, evaluate.toString()); } + groovyShell.getClassLoader().clearCache(); } StringSubstitutor str = new StringSubstitutor(targetData); -- Gitblit v1.9.1