type Exception report
message Request processing failed; nested exception is freemarker.core.InvalidReferenceException: The following has evaluated to null or missing:
description The server encountered an internal error that prevented it from fulfilling this request.
exception
org.springframework.web.util.NestedServletException: Request processing failed; nested exception is freemarker.core.InvalidReferenceException: The following has evaluated to null or missing: ==> filter [in template "home/search_condition.html" at line 352, column 18] ---- Tip: If the failing expression is known to be legally refer to something that's sometimes null or missing, either specify a default value like myOptionalVar!myDefault, or use <#if myOptionalVar??>when-present<#else>when-missing</#if>. (These only cover the last step of the expression; to cover the whole expression, use parenthesis: (myOptionalVar.foo)!myDefault, (myOptionalVar.foo)?? ---- ---- FTL stack trace ("~" means nesting-related): - Failed at: #if filter.modal?? [in template "home/search_condition.html" at line 352, column 13] - Reached through: #include "../search_condition.html" [in template "home/shop/goods.html" at line 5, column 5] ~ Reached through: #nested [in template "home/layout.html" in macro "html" at line 35, column 1] ~ Reached through: @c.html title="Index" [in template "home/shop/goods.html" at line 3, column 1] ---- org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:979) org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:858) javax.servlet.http.HttpServlet.service(HttpServlet.java:622) org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:843) javax.servlet.http.HttpServlet.service(HttpServlet.java:729) org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52) net.shopnc.common.filter.ParamFilter.doFilter(ParamFilter.java:20) net.shopnc.common.filter.CorsFilter.doFilter(CorsFilter.java:39) org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:121) org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107) org.springframework.web.filter.ShallowEtagHeaderFilter.doFilterInternal(ShallowEtagHeaderFilter.java:87) org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107) org.jasig.cas.client.util.HttpServletRequestWrapperFilter.doFilter(HttpServletRequestWrapperFilter.java:72) org.jasig.cas.client.session.SingleSignOutFilter.doFilter(SingleSignOutFilter.java:94) org.springframework.session.web.http.SessionRepositoryFilter.doFilterInternal(SessionRepositoryFilter.java:171) org.springframework.session.web.http.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:80) org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:346) org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:262) org.apache.logging.log4j.web.Log4jServletFilter.doFilter(Log4jServletFilter.java:71) org.jasig.cas.client.validation.AbstractTicketValidationFilter.doFilter(AbstractTicketValidationFilter.java:239)
root cause
freemarker.core.InvalidReferenceException: The following has evaluated to null or missing: ==> filter [in template "home/search_condition.html" at line 352, column 18] ---- Tip: If the failing expression is known to be legally refer to something that's sometimes null or missing, either specify a default value like myOptionalVar!myDefault, or use <#if myOptionalVar??>when-present<#else>when-missing</#if>. (These only cover the last step of the expression; to cover the whole expression, use parenthesis: (myOptionalVar.foo)!myDefault, (myOptionalVar.foo)?? ---- ---- FTL stack trace ("~" means nesting-related): - Failed at: #if filter.modal?? [in template "home/search_condition.html" at line 352, column 13] - Reached through: #include "../search_condition.html" [in template "home/shop/goods.html" at line 5, column 5] ~ Reached through: #nested [in template "home/layout.html" in macro "html" at line 35, column 1] ~ Reached through: @c.html title="Index" [in template "home/shop/goods.html" at line 3, column 1] ---- freemarker.core.InvalidReferenceException.getInstance(InvalidReferenceException.java:131) freemarker.core.UnexpectedTypeException.newDesciptionBuilder(UnexpectedTypeException.java:77) freemarker.core.UnexpectedTypeException.<init>(UnexpectedTypeException.java:40) freemarker.core.NonHashException.<init>(NonHashException.java:46) freemarker.core.Dot._eval(Dot.java:45) freemarker.core.Expression.eval(Expression.java:78) freemarker.core.ExistsExpression._eval(ExistsExpression.java:45) freemarker.core.Expression.eval(Expression.java:78) freemarker.core.Expression.evalToBoolean(Expression.java:124) freemarker.core.Expression.evalToBoolean(Expression.java:110) freemarker.core.ConditionalBlock.accept(ConditionalBlock.java:46) freemarker.core.Environment.visit(Environment.java:324) freemarker.core.MixedContent.accept(MixedContent.java:54) freemarker.core.Environment.visitByHiddingParent(Environment.java:345) freemarker.core.IfBlock.accept(IfBlock.java:48) freemarker.core.Environment.visit(Environment.java:324) freemarker.core.MixedContent.accept(MixedContent.java:54) freemarker.core.Environment.visitByHiddingParent(Environment.java:345) freemarker.core.IfBlock.accept(IfBlock.java:48) freemarker.core.Environment.visit(Environment.java:324) freemarker.core.MixedContent.accept(MixedContent.java:54) freemarker.core.Environment.visit(Environment.java:324) freemarker.core.EscapeBlock.accept(EscapeBlock.java:48) freemarker.core.Environment.visit(Environment.java:324) freemarker.core.Environment.include(Environment.java:2072) freemarker.core.Include.accept(Include.java:167) freemarker.core.Environment.visit(Environment.java:324) freemarker.core.MixedContent.accept(MixedContent.java:54) freemarker.core.Environment.visit(Environment.java:324) freemarker.core.Environment.invokeNestedContent(Environment.java:546) freemarker.core.BodyInstruction.accept(BodyInstruction.java:56) freemarker.core.Environment.visit(Environment.java:324) freemarker.core.MixedContent.accept(MixedContent.java:54) freemarker.core.Environment.visit(Environment.java:324) freemarker.core.Macro$Context.runMacro(Macro.java:184) freemarker.core.Environment.invoke(Environment.java:701) freemarker.core.UnifiedCall.accept(UnifiedCall.java:84) freemarker.core.Environment.visit(Environment.java:324) freemarker.core.MixedContent.accept(MixedContent.java:54) freemarker.core.Environment.visit(Environment.java:324) freemarker.core.EscapeBlock.accept(EscapeBlock.java:48) freemarker.core.Environment.visit(Environment.java:324) freemarker.core.Environment.process(Environment.java:302) freemarker.template.Template.process(Template.java:325) org.springframework.web.servlet.view.freemarker.FreeMarkerView.processTemplate(FreeMarkerView.java:367) org.springframework.web.servlet.view.freemarker.FreeMarkerView.doRender(FreeMarkerView.java:284) org.springframework.web.servlet.view.freemarker.FreeMarkerView.renderMergedTemplateModel(FreeMarkerView.java:234) org.springframework.web.servlet.view.AbstractTemplateView.renderMergedOutputModel(AbstractTemplateView.java:167) org.springframework.web.servlet.view.AbstractView.render(AbstractView.java:303) org.springframework.web.servlet.DispatcherServlet.render(DispatcherServlet.java:1246) org.springframework.web.servlet.DispatcherServlet.processDispatchResult(DispatcherServlet.java:1029) org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:973) org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:895) org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:967) org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:858) javax.servlet.http.HttpServlet.service(HttpServlet.java:622) org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:843) javax.servlet.http.HttpServlet.service(HttpServlet.java:729) org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52) net.shopnc.common.filter.ParamFilter.doFilter(ParamFilter.java:20) net.shopnc.common.filter.CorsFilter.doFilter(CorsFilter.java:39) org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:121) org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107) org.springframework.web.filter.ShallowEtagHeaderFilter.doFilterInternal(ShallowEtagHeaderFilter.java:87) org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107) org.jasig.cas.client.util.HttpServletRequestWrapperFilter.doFilter(HttpServletRequestWrapperFilter.java:72) org.jasig.cas.client.session.SingleSignOutFilter.doFilter(SingleSignOutFilter.java:94) org.springframework.session.web.http.SessionRepositoryFilter.doFilterInternal(SessionRepositoryFilter.java:171) org.springframework.session.web.http.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:80) org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:346) org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:262) org.apache.logging.log4j.web.Log4jServletFilter.doFilter(Log4jServletFilter.java:71) org.jasig.cas.client.validation.AbstractTicketValidationFilter.doFilter(AbstractTicketValidationFilter.java:239)
note The full stack trace of the root cause is available in the Apache Tomcat/8.0.35 logs.