MiniDao FreeMarker Cache 缓存问题

[2019-12-11 21:14:55] [TRACE] [org.springframework.transaction.interceptor.TransactionInterceptor:502] Completing transaction for [org.jeecgframework.web.system.service.impl.SystemServiceImpl.get]
[2019-12-11 21:14:57] [DEBUG] [freemarker.cache:81] "com/jeecg/crm/sql/CustomerDao_getWeekOr30DaysUnContactList.sql"["zh_CN",UTF-8,parsed]  using cached since file:/D:/workspace_mars/.metadata/.plugins/org.eclipse.wst.server.core/tmp1/wtpwebapps/crm/WEB-INF/classes/com/jeecg/crm/sql/CustomerDao_getWeekOr30DaysUnContactList.sql didn't change.
[2019-12-11 21:14:57] [DEBUG] [org.jeecgframework.minidao.aop.MiniDaoHandler:612] MiniDao-SQL-Path:com/jeecg/crm/sql/CustomerDao_getWeekOr30DaysUnContactList.sql
[2019-12-11 21:14:57] [DEBUG] [org.jeecgframework.minidao.util.FreemarkerParseFactory:90]  minidao sql templdate : com/jeecg/crm/sql/CustomerDao_getWeekOr30DaysUnContactList.sql
[2019-12-11 21:14:57] [DEBUG] [freemarker.cache:81] "com/jeecg/crm/sql/CustomerDao_getWeekOr30DaysUnContactList.sql"["zh_CN",utf-8,parsed]  using cached since file:/D:/workspace_mars/.metadata/.plugins/org.eclipse.wst.server.core/tmp1/wtpwebapps/crm/WEB-INF/classes/com/jeecg/crm/sql/CustomerDao_getWeekOr30DaysUnContactList.sql didn't change.
[2019-12-11 21:14:57] [ERROR] [freemarker.runtime:96] Template processing error: "Expression DaoFormat.getInStrs ( userIds ) is undefined on line 55, column 50 in com/jeecg/crm/sql/CustomerDao_getWeekOr30DaysUnContactList.sql."

Expression DaoFormat.getInStrs ( userIds ) is undefined on line 55, column 50 in com/jeecg/crm/sql/CustomerDao_getWeekOr30DaysUnContactList.sql.
The problematic instruction:
----------
==> ${DaoFormat.getInStrs ( userIds )} [on line 55, column 48 in com/jeecg/crm/sql/CustomerDao_getWeekOr30DaysUnContactList.sql]
----------

Java backtrace for programmers:
----------
freemarker.core.InvalidReferenceException: Expression DaoFormat.getInStrs ( userIds ) is undefined on line 55, column 50 in com/jeecg/crm/sql/CustomerDao_getWeekOr30DaysUnContactList.sql.
    at freemarker.core.TemplateObject.assertNonNull(TemplateObject.java:125)
    at freemarker.core.Expression.getStringValue(Expression.java:118)
    at freemarker.core.Expression.getStringValue(Expression.java:93)
    at freemarker.core.DollarVariable.accept(DollarVariable.java:76)
    at freemarker.core.Environment.visit(Environment.java:221)
    at freemarker.core.MixedContent.accept(MixedContent.java:92)
    at freemarker.core.Environment.visit(Environment.java:221)
    at freemarker.core.Environment.process(Environment.java:199)
    at freemarker.template.Template.process(Template.java:259)
    at org.jeecgframework.minidao.util.FreemarkerParseFactory.parseTemplate(FreemarkerParseFactory.java:97)
    at org.jeecgframework.minidao.aop.MiniDaoHandler.parseSqlTemplate(MiniDaoHandler.java:613)
    at org.jeecgframework.minidao.aop.MiniDaoHandler.invoke(MiniDaoHandler.java:101)
    at com.sun.proxy.$Proxy98.getWeekOr30DaysUnContactList(Unknown Source)
    at com.jeecg.crm.service.impl.LeadServiceImpl.unContactList(LeadServiceImpl.java:1716)
    at com.jeecg.crm.service.impl.LeadServiceImpl.findThirtyDaysUnContactList(LeadServiceImpl.java:1692)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:498)
    at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:333)
    at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:190)
    at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:157)
    at org.springframework.transaction.interceptor.TransactionInterceptor$1.proceedWithInvocation(TransactionInterceptor.java:99)
    at org.springframework.transaction.interceptor.TransactionAspectSupport.invokeWithinTransaction(TransactionAspectSupport.java:282)
    at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:96)
    at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:179)
    at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:213)
    at com.sun.proxy.$Proxy91.findThirtyDaysUnContactList(Unknown Source)
    at com.jeecg.crm.controller.LeadController.thirtyDaysUnContactDatagrid(LeadController.java:462)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:498)
    at org.springframework.web.method.support.InvocableHandlerMethod.doInvoke(InvocableHandlerMethod.java:205)
    at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:133)
    at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:97)
    at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:827)
    at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:738)
    at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:85)
    at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:967)
    at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:901)
    at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:970)
    at org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:872)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:648)
    at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:846)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:729)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:292)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:207)
    at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:240)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:207)
    at com.alibaba.druid.support.http.WebStatFilter.doFilter(WebStatFilter.java:123)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:240)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:207)
    at org.jeecgframework.core.aop.GZipFilter.doFilter(GZipFilter.java:114)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:240)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:207)
    at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:197)
    at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:240)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:207)
    at org.springframework.orm.hibernate4.support.OpenSessionInViewFilter.doFilterInternal(OpenSessionInViewFilter.java:151)
    at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:240)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:207)
    at org.springframework.session.web.http.SessionRepositoryFilter.doFilterInternal(SessionRepositoryFilter.java:167)
    at org.springframework.session.web.http.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:80)
    at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:346)
    at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:262)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:240)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:207)
    at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:212)
    at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:94)
    at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:492)
    at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:141)
    at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:80)
    at org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:620)
    at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:88)
    at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:502)
    at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1152)
    at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:684)
    at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1539)
    at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.run(NioEndpoint.java:1495)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
    at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
    at java.lang.Thread.run(Thread.java:748)

[2019-12-11 21:14:55] [TRACE] [org.springframework.transaction.interceptor.TransactionInterceptor:502] Completing transaction for [org.jeecgframework.web.system.service.impl.SystemServiceImpl.get][2019-12-11 21:14:57] [DEBUG] [freemarker.cache:81] "com/jeecg/crm/sql/CustomerDao_getWeekOr30DaysUnContactList.sql"["zh_CN",UTF-8,parsed]  using cached since file:/D:/workspace_mars/.metadata/.plugins/org.eclipse.wst.server.core/tmp1/wtpwebapps/crm/WEB-INF/classes/com/jeecg/crm/sql/CustomerDao_getWeekOr30DaysUnContactList.sql didn't change.[2019-12-11 21:14:57] [DEBUG] [org.jeecgframework.minidao.aop.MiniDaoHandler:612] MiniDao-SQL-Path:com/jeecg/crm/sql/CustomerDao_getWeekOr30DaysUnContactList.sql[2019-12-11 21:14:57] [DEBUG] [org.jeecgframework.minidao.util.FreemarkerParseFactory:90]  minidao sql templdate : com/jeecg/crm/sql/CustomerDao_getWeekOr30DaysUnContactList.sql[2019-12-11 21:14:57] [DEBUG] [freemarker.cache:81] "com/jeecg/crm/sql/CustomerDao_getWeekOr30DaysUnContactList.sql"["zh_CN",utf-8,parsed]  using cached since file:/D:/workspace_mars/.metadata/.plugins/org.eclipse.wst.server.core/tmp1/wtpwebapps/crm/WEB-INF/classes/com/jeecg/crm/sql/CustomerDao_getWeekOr30DaysUnContactList.sql didn't change.[2019-12-11 21:14:57] [ERROR] [freemarker.runtime:96] Template processing error: "Expression DaoFormat.getInStrs ( userIds ) is undefined on line 55, column 50 in com/jeecg/crm/sql/CustomerDao_getWeekOr30DaysUnContactList.sql."
Expression DaoFormat.getInStrs ( userIds ) is undefined on line 55, column 50 in com/jeecg/crm/sql/CustomerDao_getWeekOr30DaysUnContactList.sql.The problematic instruction:----------==> ${DaoFormat.getInStrs ( userIds )} [on line 55, column 48 in com/jeecg/crm/sql/CustomerDao_getWeekOr30DaysUnContactList.sql]----------
Java backtrace for programmers:----------freemarker.core.InvalidReferenceException: Expression DaoFormat.getInStrs ( userIds ) is undefined on line 55, column 50 in com/jeecg/crm/sql/CustomerDao_getWeekOr30DaysUnContactList.sql.at freemarker.core.TemplateObject.assertNonNull(TemplateObject.java:125)at freemarker.core.Expression.getStringValue(Expression.java:118)at freemarker.core.Expression.getStringValue(Expression.java:93)at freemarker.core.DollarVariable.accept(DollarVariable.java:76)at freemarker.core.Environment.visit(Environment.java:221)at freemarker.core.MixedContent.accept(MixedContent.java:92)at freemarker.core.Environment.visit(Environment.java:221)at freemarker.core.Environment.process(Environment.java:199)at freemarker.template.Template.process(Template.java:259)at org.jeecgframework.minidao.util.FreemarkerParseFactory.parseTemplate(FreemarkerParseFactory.java:97)at org.jeecgframework.minidao.aop.MiniDaoHandler.parseSqlTemplate(MiniDaoHandler.java:613)at org.jeecgframework.minidao.aop.MiniDaoHandler.invoke(MiniDaoHandler.java:101)at com.sun.proxy.$Proxy98.getWeekOr30DaysUnContactList(Unknown Source)at com.jeecg.crm.service.impl.LeadServiceImpl.unContactList(LeadServiceImpl.java:1716)at com.jeecg.crm.service.impl.LeadServiceImpl.findThirtyDaysUnContactList(LeadServiceImpl.java:1692)at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)at java.lang.reflect.Method.invoke(Method.java:498)at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:333)at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:190)at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:157)at org.springframework.transaction.interceptor.TransactionInterceptor$1.proceedWithInvocation(TransactionInterceptor.java:99)at org.springframework.transaction.interceptor.TransactionAspectSupport.invokeWithinTransaction(TransactionAspectSupport.java:282)at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:96)at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:179)at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:213)at com.sun.proxy.$Proxy91.findThirtyDaysUnContactList(Unknown Source)at com.jeecg.crm.controller.LeadController.thirtyDaysUnContactDatagrid(LeadController.java:462)at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)at java.lang.reflect.Method.invoke(Method.java:498)at org.springframework.web.method.support.InvocableHandlerMethod.doInvoke(InvocableHandlerMethod.java:205)at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:133)at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:97)at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:827)at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:738)at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:85)at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:967)at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:901)at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:970)at org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:872)at javax.servlet.http.HttpServlet.service(HttpServlet.java:648)at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:846)at javax.servlet.http.HttpServlet.service(HttpServlet.java:729)at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:292)at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:207)at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:240)at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:207)at com.alibaba.druid.support.http.WebStatFilter.doFilter(WebStatFilter.java:123)at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:240)at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:207)at org.jeecgframework.core.aop.GZipFilter.doFilter(GZipFilter.java:114)at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:240)at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:207)at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:197)at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:240)at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:207)at org.springframework.orm.hibernate4.support.OpenSessionInViewFilter.doFilterInternal(OpenSessionInViewFilter.java:151)at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:240)at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:207)at org.springframework.session.web.http.SessionRepositoryFilter.doFilterInternal(SessionRepositoryFilter.java:167)at org.springframework.session.web.http.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:80)at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:346)at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:262)at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:240)at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:207)at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:212)at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:94)at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:492)at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:141)at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:80)at org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:620)at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:88)at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:502)at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1152)at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:684)at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1539)at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.run(NioEndpoint.java:1495)at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)at java.lang.Thread.run(Thread.java:748)

原文地址:https://www.cnblogs.com/rgqancy/p/12025363.html