FreeMarker template error (HTML_DEBUG mode; use RETHROW in production!)

When calling macro "getColumnUrl", required parameter "c" (parameter #1) was specified, but had null/missing value.

----
Tip: If the parameter value expression on the caller side is known to be legally null/missing, you may want to specify a default value for it with the "!" operator, like paramValue!defaultValue.
----

----
FTL stack trace ("~" means nesting-related):
	- Failed at: @getColumnUrl c=topNav action=baseAction  [in template "org/beangle/web/action/sideNav.ftl" at line 3, column 15]
	- Reached through: #include "../sideNav.ftl"  [in template "org/beangle/web/action/index/list.ftl" at line 25, column 17]
----

Java stack trace (for programmers):
----
freemarker.core._MiscTemplateException: [... Exception message was already printed; see it above ...]
	at freemarker.core.Macro$Context.sanityCheck(Macro.java:232)
	at freemarker.core.Macro$Context.runMacro(Macro.java:181)
	at freemarker.core.Environment.invoke(Environment.java:701)
	at freemarker.core.UnifiedCall.accept(UnifiedCall.java:84)
	at freemarker.core.Environment.visit(Environment.java:324)
	at freemarker.core.MixedContent.accept(MixedContent.java:54)
	at freemarker.core.Environment.visit(Environment.java:324)
	at freemarker.core.Environment.include(Environment.java:2072)
	at freemarker.core.Include.accept(Include.java:167)
	at freemarker.core.Environment.visit(Environment.java:324)
	at freemarker.core.MixedContent.accept(MixedContent.java:54)
	at freemarker.core.Environment.visit(Environment.java:324)
	at freemarker.core.Environment.process(Environment.java:302)
	at freemarker.template.Template.process(Template.java:325)
	at org.apache.struts2.views.freemarker.FreemarkerResult.doExecute(FreemarkerResult.java:223)
	at org.apache.struts2.dispatcher.StrutsResultSupport.execute(StrutsResultSupport.java:191)
	at com.opensymphony.xwork2.DefaultActionInvocation.executeResult(DefaultActionInvocation.java:372)
	at com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:276)
	at org.beangle.struts2.interceptor.FlashInterceptor.intercept(FlashInterceptor.java:23)
	at com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:245)
	at org.beangle.struts2.interceptor.SimpleServletConfigInterceptor.intercept(SimpleServletConfigInterceptor.java:35)
	at com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:245)
	at org.apache.struts2.interceptor.FileUploadInterceptor.intercept(FileUploadInterceptor.java:253)
	at com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:245)
	at org.beangle.struts2.interceptor.I18nInterceptor.intercept(I18nInterceptor.java:48)
	at com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:245)
	at com.opensymphony.xwork2.interceptor.ExceptionMappingInterceptor.intercept(ExceptionMappingInterceptor.java:189)
	at com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:245)
	at org.apache.struts2.impl.StrutsActionProxy.execute(StrutsActionProxy.java:54)
	at org.apache.struts2.dispatcher.Dispatcher.serviceAction(Dispatcher.java:575)
	at org.apache.struts2.dispatcher.ng.ExecuteOperations.executeAction(ExecuteOperations.java:81)
	at org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter.doFilter(StrutsPrepareAndExecuteFilter.java:99)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
	at org.beangle.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:120)
	at org.beangle.security.web.access.intercept.FilterSecurityInterceptor.invoke(FilterSecurityInterceptor.java:95)
	at org.beangle.security.web.access.intercept.FilterSecurityInterceptor.doFilter(FilterSecurityInterceptor.java:71)
	at org.beangle.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:128)
	at org.beangle.security.web.session.ConcurrentSessionFilter.doFilterHttp(ConcurrentSessionFilter.java:97)
	at org.beangle.web.filter.GenericHttpFilterBean.doFilter(GenericHttpFilterBean.java:67)
	at org.beangle.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:128)
	at org.beangle.security.web.access.ExceptionTranslationFilter.doFilterHttp(ExceptionTranslationFilter.java:43)
	at org.beangle.web.filter.GenericHttpFilterBean.doFilter(GenericHttpFilterBean.java:67)
	at org.beangle.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:128)
	at org.beangle.security.web.auth.AnonymousFilter.doFilterHttp(AnonymousFilter.java:73)
	at org.beangle.web.filter.GenericHttpFilterBean.doFilter(GenericHttpFilterBean.java:67)
	at org.beangle.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:128)
	at org.beangle.security.web.auth.preauth.AbstractPreauthFilter.doFilterHttp(AbstractPreauthFilter.java:87)
	at org.beangle.web.filter.GenericHttpFilterBean.doFilter(GenericHttpFilterBean.java:67)
	at org.beangle.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:128)
	at org.beangle.security.web.auth.preauth.AbstractPreauthFilter.doFilterHttp(AbstractPreauthFilter.java:87)
	at org.beangle.web.filter.GenericHttpFilterBean.doFilter(GenericHttpFilterBean.java:67)
	at org.beangle.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:128)
	at org.beangle.security.web.context.HttpSessionContextIntegrationFilter.doFilterHttp(HttpSessionContextIntegrationFilter.java:193)
	at org.beangle.web.filter.GenericHttpFilterBean.doFilter(GenericHttpFilterBean.java:67)
	at org.beangle.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:128)
	at org.beangle.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:45)
	at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:237)
	at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:167)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
	at org.springframework.orm.hibernate3.support.OpenSessionInViewFilter.doFilterInternal(OpenSessionInViewFilter.java:198)
	at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:76)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
	at org.beangle.web.filter.CharacterEncodingFilter.doFilter(CharacterEncodingFilter.java:25)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
	at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:743)
	at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:485)
	at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:410)
	at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:337)
	at org.tuckey.web.filters.urlrewrite.NormalRewrittenUrl.doRewrite(NormalRewrittenUrl.java:195)
	at org.tuckey.web.filters.urlrewrite.RuleChain.handleRewrite(RuleChain.java:159)
	at org.tuckey.web.filters.urlrewrite.RuleChain.doRules(RuleChain.java:141)
	at org.tuckey.web.filters.urlrewrite.UrlRewriter.processRequest(UrlRewriter.java:90)
	at org.tuckey.web.filters.urlrewrite.UrlRewriteFilter.doFilter(UrlRewriteFilter.java:406)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
	at org.beangle.filters.XssFilter.doFilter(XssFilter.java:50)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:219)
	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:110)
	at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:506)
	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:169)
	at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:103)
	at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:962)
	at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:116)
	at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:445)
	at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1115)
	at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:637)
	at org.apache.tomcat.util.net.AprEndpoint$SocketProcessor.doRun(AprEndpoint.java:2555)
	at org.apache.tomcat.util.net.AprEndpoint$SocketProcessor.run(AprEndpoint.java:2544)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
	at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
	at java.lang.Thread.run(Thread.java:745)

网站 - 后台

Server Error! You know what I mean.

Create or change [/template/error.ftl] in your webapp directory.Using${(stack.pop().exceptionStack)!} to display exception stack.

FreeMarker template error:
When calling macro "getColumnUrl", required parameter "c" (parameter #1) was specified, but had null/missing value.

----
Tip: If the parameter value expression on the caller side is known to be legally null/missing, you may want to specify a default value for it with the "!" operator, like paramValue!defaultValue.
----

----
FTL stack trace ("~" means nesting-related):
	- Failed at: @getColumnUrl c=topNav action=baseAction  [in template "org/beangle/web/action/sideNav.ftl" at line 3, column 15]
	- Reached through: #include "../sideNav.ftl"  [in template "org/beangle/web/action/index/list.ftl" at line 25, column 17]
----

Java stack trace (for programmers):
----
freemarker.core._MiscTemplateException: [... Exception message was already printed; see it above ...]
	at freemarker.core.Macro$Context.sanityCheck(Macro.java:232)
	at freemarker.core.Macro$Context.runMacro(Macro.java:181)
	at freemarker.core.Environment.invoke(Environment.java:701)
	at freemarker.core.UnifiedCall.accept(UnifiedCall.java:84)
	at freemarker.core.Environment.visit(Environment.java:324)
	at freemarker.core.MixedContent.accept(MixedContent.java:54)
	at freemarker.core.Environment.visit(Environment.java:324)
	at freemarker.core.Environment.include(Environment.java:2072)
	at freemarker.core.Include.accept(Include.java:167)
	at freemarker.core.Environment.visit(Environment.java:324)
	at freemarker.core.MixedContent.accept(MixedContent.java:54)
	at freemarker.core.Environment.visit(Environment.java:324)
	at freemarker.core.Environment.process(Environment.java:302)
	at freemarker.template.Template.process(Template.java:325)
	at org.apache.struts2.views.freemarker.FreemarkerResult.doExecute(FreemarkerResult.java:223)
	at org.apache.struts2.dispatcher.StrutsResultSupport.execute(StrutsResultSupport.java:191)
	at com.opensymphony.xwork2.DefaultActionInvocation.executeResult(DefaultActionInvocation.java:372)
	at com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:276)
	at org.beangle.struts2.interceptor.FlashInterceptor.intercept(FlashInterceptor.java:23)
	at com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:245)
	at org.beangle.struts2.interceptor.SimpleServletConfigInterceptor.intercept(SimpleServletConfigInterceptor.java:35)
	at com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:245)
	at org.apache.struts2.interceptor.FileUploadInterceptor.intercept(FileUploadInterceptor.java:253)
	at com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:245)
	at org.beangle.struts2.interceptor.I18nInterceptor.intercept(I18nInterceptor.java:48)
	at com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:245)
	at com.opensymphony.xwork2.interceptor.ExceptionMappingInterceptor.intercept(ExceptionMappingInterceptor.java:189)
	at com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:245)
	at org.apache.struts2.impl.StrutsActionProxy.execute(StrutsActionProxy.java:54)
	at org.apache.struts2.dispatcher.Dispatcher.serviceAction(Dispatcher.java:575)
	at org.apache.struts2.dispatcher.ng.ExecuteOperations.executeAction(ExecuteOperations.java:81)
	at org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter.doFilter(StrutsPrepareAndExecuteFilter.java:99)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
	at org.beangle.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:120)
	at org.beangle.security.web.access.intercept.FilterSecurityInterceptor.invoke(FilterSecurityInterceptor.java:95)
	at org.beangle.security.web.access.intercept.FilterSecurityInterceptor.doFilter(FilterSecurityInterceptor.java:71)
	at org.beangle.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:128)
	at org.beangle.security.web.session.ConcurrentSessionFilter.doFilterHttp(ConcurrentSessionFilter.java:97)
	at org.beangle.web.filter.GenericHttpFilterBean.doFilter(GenericHttpFilterBean.java:67)
	at org.beangle.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:128)
	at org.beangle.security.web.access.ExceptionTranslationFilter.doFilterHttp(ExceptionTranslationFilter.java:43)
	at org.beangle.web.filter.GenericHttpFilterBean.doFilter(GenericHttpFilterBean.java:67)
	at org.beangle.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:128)
	at org.beangle.security.web.auth.AnonymousFilter.doFilterHttp(AnonymousFilter.java:73)
	at org.beangle.web.filter.GenericHttpFilterBean.doFilter(GenericHttpFilterBean.java:67)
	at org.beangle.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:128)
	at org.beangle.security.web.auth.preauth.AbstractPreauthFilter.doFilterHttp(AbstractPreauthFilter.java:87)
	at org.beangle.web.filter.GenericHttpFilterBean.doFilter(GenericHttpFilterBean.java:67)
	at org.beangle.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:128)
	at org.beangle.security.web.auth.preauth.AbstractPreauthFilter.doFilterHttp(AbstractPreauthFilter.java:87)
	at org.beangle.web.filter.GenericHttpFilterBean.doFilter(GenericHttpFilterBean.java:67)
	at org.beangle.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:128)
	at org.beangle.security.web.context.HttpSessionContextIntegrationFilter.doFilterHttp(HttpSessionContextIntegrationFilter.java:193)
	at org.beangle.web.filter.GenericHttpFilterBean.doFilter(GenericHttpFilterBean.java:67)
	at org.beangle.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:128)
	at org.beangle.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:45)
	at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:237)
	at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:167)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
	at org.springframework.orm.hibernate3.support.OpenSessionInViewFilter.doFilterInternal(OpenSessionInViewFilter.java:198)
	at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:76)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
	at org.beangle.web.filter.CharacterEncodingFilter.doFilter(CharacterEncodingFilter.java:25)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
	at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:743)
	at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:485)
	at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:410)
	at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:337)
	at org.tuckey.web.filters.urlrewrite.NormalRewrittenUrl.doRewrite(NormalRewrittenUrl.java:195)
	at org.tuckey.web.filters.urlrewrite.RuleChain.handleRewrite(RuleChain.java:159)
	at org.tuckey.web.filters.urlrewrite.RuleChain.doRules(RuleChain.java:141)
	at org.tuckey.web.filters.urlrewrite.UrlRewriter.processRequest(UrlRewriter.java:90)
	at org.tuckey.web.filters.urlrewrite.UrlRewriteFilter.doFilter(UrlRewriteFilter.java:406)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
	at org.beangle.filters.XssFilter.doFilter(XssFilter.java:50)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:219)
	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:110)
	at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:506)
	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:169)
	at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:103)
	at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:962)
	at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:116)
	at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:445)
	at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1115)
	at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:637)
	at org.apache.tomcat.util.net.AprEndpoint$SocketProcessor.doRun(AprEndpoint.java:2555)
	at org.apache.tomcat.util.net.AprEndpoint$SocketProcessor.run(AprEndpoint.java:2544)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
	at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
	at java.lang.Thread.run(Thread.java:745)