freemarker template error: the following has evaluated to null or missing: ==> content.contentext.shorttitle [in template "web-inf/temp/cms/www/default/content/job.html" at line 75, column 157] tip: if the failing expression is known to be legally null/missing, either specify a default value with 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 parenthessis: (myoptionvar.foo)!mydefault, (myoptionvar.foo)?? the failing instruction (ftl stack trace): ---------- ==> ${content.contentext.shorttitle} [in template "web-inf/temp/cms/www/default/content/job.html" at line 75, column 155] #else [in template "web-inf/temp/cms/www/default/content/job.html" at line 75, column 148] ---------- java stack trace (for programmers): ---------- freemarker.core.invalidreferenceexception: [... exception message was already printed; see it above ...] at freemarker.core.invalidreferenceexception.getinstance(invalidreferenceexception.java:98) at freemarker.core.evalutil.coercemodeltostring(evalutil.java:382) at freemarker.core.expression.evalandcoercetostring(expression.java:115) at freemarker.core.dollarvariable.accept(dollarvariable.java:76) at freemarker.core.environment.visit(environment.java:265) at freemarker.core.ifblock.accept(ifblock.java:84) at freemarker.core.environment.visit(environment.java:265) at freemarker.core.mixedcontent.accept(mixedcontent.java:93) at freemarker.core.environment.visit(environment.java:265) at freemarker.core.environment.process(environment.java:243) at freemarker.template.template.process(template.java:277) at org.springframework.web.servlet.view.freemarker.freemarkerview.processtemplate(freemarkerview.java:367) at org.springframework.web.servlet.view.freemarker.freemarkerview.dorender(freemarkerview.java:284) at org.springframework.web.servlet.view.freemarker.freemarkerview.rendermergedtemplatemodel(freemarkerview.java:234) at org.springframework.web.servlet.view.abstracttemplateview.rendermergedoutputmodel(abstracttemplateview.java:167) at org.springframework.web.servlet.view.abstractview.render(abstractview.java:303) at org.springframework.web.servlet.dispatcherservlet.render(dispatcherservlet.java:1243) at org.springframework.web.servlet.dispatcherservlet.processdispatchresult(dispatcherservlet.java:1027) at org.springframework.web.servlet.dispatcherservlet.dodispatch(dispatcherservlet.java:971) at org.springframework.web.servlet.dispatcherservlet.doservice(dispatcherservlet.java:893) at org.springframework.web.servlet.frameworkservlet.processrequest(frameworkservlet.java:968) at org.springframework.web.servlet.frameworkservlet.doget(frameworkservlet.java:859) at javax.servlet.http.httpservlet.service(httpservlet.java:624) at org.springframework.web.servlet.frameworkservlet.service(frameworkservlet.java:844) at javax.servlet.http.httpservlet.service(httpservlet.java:731) at org.apache.catalina.core.applicationfilterchain.internaldofilter(applicationfilterchain.java:303) at org.apache.catalina.core.applicationfilterchain.dofilter(applicationfilterchain.java:208) at org.apache.tomcat.websocket.server.wsfilter.dofilter(wsfilter.java:52) at org.apache.catalina.core.applicationfilterchain.internaldofilter(applicationfilterchain.java:241) at org.apache.catalina.core.applicationfilterchain.dofilter(applicationfilterchain.java:208) at java_filter.webfilter.dofilter(webfilter.java:269) at org.apache.catalina.core.applicationfilterchain.internaldofilter(applicationfilterchain.java:241) at org.apache.catalina.core.applicationfilterchain.dofilter(applicationfilterchain.java:208) at com.zttech.cms.common.web.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 com.opensymphony.sitemesh.webapp.sitemeshfilter.obtaincontent(sitemeshfilter.java:129) at com.opensymphony.sitemesh.webapp.sitemeshfilter.dofilter(sitemeshfilter.java:77) at org.apache.catalina.core.applicationfilterchain.internaldofilter(applicationfilterchain.java:241) at org.apache.catalina.core.applicationfilterchain.dofilter(applicationfilterchain.java:208) at com.alibaba.druid.support.http.webstatfilter.dofilter(webstatfilter.java:123) at org.apache.catalina.core.applicationfilterchain.internaldofilter(applicationfilterchain.java:241) at org.apache.catalina.core.applicationfilterchain.dofilter(applicationfilterchain.java:208) at org.apache.shiro.web.servlet.proxiedfilterchain.dofilter(proxiedfilterchain.java:61) at org.apache.shiro.web.servlet.advicefilter.executechain(advicefilter.java:108) at org.apache.shiro.web.servlet.advicefilter.dofilterinternal(advicefilter.java:137) at org.apache.shiro.web.servlet.onceperrequestfilter.dofilter(onceperrequestfilter.java:125) at org.apache.shiro.web.servlet.proxiedfilterchain.dofilter(proxiedfilterchain.java:66) at org.apache.shiro.web.servlet.abstractshirofilter.executechain(abstractshirofilter.java:450) at org.apache.shiro.web.servlet.abstractshirofilter$1.call(abstractshirofilter.java:365) at org.apache.shiro.subject.support.subjectcallable.docall(subjectcallable.java:90) at org.apache.shiro.subject.support.subjectcallable.call(subjectcallable.java:83) at org.apache.shiro.subject.support.delegatingsubject.execute(delegatingsubject.java:387) at org.apache.shiro.web.servlet.abstractshirofilter.dofilterinternal(abstractshirofilter.java:362) at org.apache.shiro.web.servlet.onceperrequestfilter.dofilter(onceperrequestfilter.java:125) 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:241) at org.apache.catalina.core.applicationfilterchain.dofilter(applicationfilterchain.java:208) 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:241) at org.apache.catalina.core.applicationfilterchain.dofilter(applicationfilterchain.java:208) at org.springframework.web.filter.characterencodingfilter.dofilterinternal(characterencodingfilter.java:121) at org.springframework.web.filter.onceperrequestfilter.dofilter(onceperrequestfilter.java:107) 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:220) at org.apache.catalina.core.standardcontextvalve.invoke(standardcontextvalve.java:122) at org.apache.catalina.authenticator.authenticatorbase.invoke(authenticatorbase.java:505) 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:956) at org.apache.catalina.core.standardenginevalve.invoke(standardenginevalve.java:116) at org.apache.catalina.connector.coyoteadapter.service(coyoteadapter.java:436) at org.apache.coyote.http11.abstracthttp11processor.process(abstracthttp11processor.java:1078) at org.apache.coyote.abstractprotocol$abstractconnectionhandler.process(abstractprotocol.java:625) at org.apache.tomcat.util.net.jioendpoint$socketprocessor.run(jioendpoint.java:316) 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)