Type Exception Report
Message The following has evaluated to null or missing:
Description The server encountered an unexpected condition that prevented it from fulfilling the request.
Exception
freemarker.core.InvalidReferenceException: The following has evaluated to null or missing: ==> styleMap[style] [in template "ftl/journal/article.ftl" at line 487, column 98] ---- Tip: It's the final [] step that caused this error, not those before it. ---- Tip: If the failing expression is known to 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: ${styleMap[style]} [in template "ftl/journal/article.ftl" at line 487, column 96] ---- freemarker.core.InvalidReferenceException.getInstance(InvalidReferenceException.java:134) freemarker.core.EvalUtil.coerceModelToTextualCommon(EvalUtil.java:467) freemarker.core.EvalUtil.coerceModelToStringOrMarkup(EvalUtil.java:389) freemarker.core.EvalUtil.coerceModelToStringOrMarkup(EvalUtil.java:358) freemarker.core.DollarVariable.calculateInterpolatedStringOrMarkup(DollarVariable.java:100) freemarker.core.DollarVariable.accept(DollarVariable.java:63) freemarker.core.Environment.visit(Environment.java:366) freemarker.core.IteratorBlock$IterationContext.executedNestedContentForCollOrSeqListing(IteratorBlock.java:291) freemarker.core.IteratorBlock$IterationContext.executeNestedContent(IteratorBlock.java:271) freemarker.core.IteratorBlock$IterationContext.accept(IteratorBlock.java:242) freemarker.core.Environment.visitIteratorBlock(Environment.java:642) freemarker.core.IteratorBlock.acceptWithResult(IteratorBlock.java:107) freemarker.core.IteratorBlock.accept(IteratorBlock.java:93) freemarker.core.Environment.visit(Environment.java:330) freemarker.core.Environment.visit(Environment.java:336) freemarker.core.Environment.visit(Environment.java:336) freemarker.core.Environment.visit(Environment.java:336) freemarker.core.Environment.process(Environment.java:309) freemarker.template.Template.process(Template.java:384) org.apache.struts2.views.freemarker.FreemarkerResult.doExecute(FreemarkerResult.java:184) org.apache.struts2.result.StrutsResultSupport.execute(StrutsResultSupport.java:206) com.opensymphony.xwork2.DefaultActionInvocation.executeResult(DefaultActionInvocation.java:375) com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:279) com.mps.journal.webapp.interceptor.FreeCreditCheckInterceptor.intercept(FreeCreditCheckInterceptor.java:95) com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:249) com.mps.journal.webapp.interceptor.FetchCommonDataInterceptor.intercept(FetchCommonDataInterceptor.java:196) com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:249) org.apache.struts2.factory.StrutsActionProxy.execute(StrutsActionProxy.java:48) org.apache.struts2.dispatcher.Dispatcher.serviceAction(Dispatcher.java:574) org.apache.struts2.dispatcher.ExecuteOperations.executeAction(ExecuteOperations.java:79) org.apache.struts2.dispatcher.filter.StrutsExecuteFilter.doFilter(StrutsExecuteFilter.java:86) com.opensymphony.sitemesh.webapp.SiteMeshFilter.obtainContent(SiteMeshFilter.java:129) com.opensymphony.sitemesh.webapp.SiteMeshFilter.doFilter(SiteMeshFilter.java:77) org.apache.struts2.dispatcher.filter.StrutsPrepareFilter.doFilter(StrutsPrepareFilter.java:92) org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:320) org.springframework.security.web.access.intercept.FilterSecurityInterceptor.invoke(FilterSecurityInterceptor.java:127) org.springframework.security.web.access.intercept.FilterSecurityInterceptor.doFilter(FilterSecurityInterceptor.java:91) org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334) org.springframework.security.web.access.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:119) org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334) org.springframework.security.web.session.SessionManagementFilter.doFilter(SessionManagementFilter.java:137) org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334) org.springframework.security.web.authentication.AnonymousAuthenticationFilter.doFilter(AnonymousAuthenticationFilter.java:111) org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334) org.springframework.security.web.authentication.rememberme.RememberMeAuthenticationFilter.doFilter(RememberMeAuthenticationFilter.java:150) org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334) org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter.doFilter(SecurityContextHolderAwareRequestFilter.java:170) org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334) org.springframework.security.web.savedrequest.RequestCacheAwareFilter.doFilter(RequestCacheAwareFilter.java:63) org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334) org.springframework.security.web.authentication.www.BasicAuthenticationFilter.doFilterInternal(BasicAuthenticationFilter.java:158) org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107) org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334) org.springframework.security.web.authentication.AbstractAuthenticationProcessingFilter.doFilter(AbstractAuthenticationProcessingFilter.java:200) org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334) org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:116) org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334) org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:56) org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107) org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334) org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:105) org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334) org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:215) org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:178) org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:357) org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:270) org.apache.logging.log4j.web.Log4jServletFilter.doFilter(Log4jServletFilter.java:64) org.tuckey.web.filters.urlrewrite.NormalRewrittenUrl.doRewrite(NormalRewrittenUrl.java:213) org.tuckey.web.filters.urlrewrite.RuleChain.handleRewrite(RuleChain.java:171) org.tuckey.web.filters.urlrewrite.RuleChain.doRules(RuleChain.java:145) org.tuckey.web.filters.urlrewrite.UrlRewriter.processRequest(UrlRewriter.java:92) org.tuckey.web.filters.urlrewrite.UrlRewriteFilter.doFilter(UrlRewriteFilter.java:389) org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:200) org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107) org.apache.logging.log4j.web.Log4jServletFilter.doFilter(Log4jServletFilter.java:71)
Note The full stack trace of the root cause is available in the server logs.