But! We have lots of other fun stuff available today!
More information about the thing that is no longer free
FreeMarker template error (DEBUG mode; use RETHROW in production!):
The following has evaluated to null or missing:
==> topicsMap.get(freebie.topicId) [in template "default/betaview/freebie-list-for-dailyish.ftl" at line 20, column 26]
----
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: #assign topic = topicsMap.get(freebie... [in template "default/betaview/freebie-list-for-dailyish.ftl" in macro "freebieView" at line 20, column 9]
- Reached through: @freebieView targetFreebie, false, true [in template "default/betaview/freebie-list-for-dailyish.ftl" at line 468, column 57]
----
Java stack trace (for programmers):
----
freemarker.core.InvalidReferenceException: [... Exception message was already printed; see it above ...]
at freemarker.core.InvalidReferenceException.getInstance(InvalidReferenceException.java:134)
at freemarker.core.Assignment.accept(Assignment.java:139)
at freemarker.core.Environment.visit(Environment.java:380)
at freemarker.core.Environment.invokeMacroOrFunctionCommonPart(Environment.java:886)
at freemarker.core.Environment.invokeMacro(Environment.java:822)
at freemarker.core.UnifiedCall.accept(UnifiedCall.java:83)
at freemarker.core.Environment.visit(Environment.java:344)
at freemarker.core.Environment.visit(Environment.java:350)
at freemarker.core.Environment.visit(Environment.java:350)
at freemarker.core.Environment.visit(Environment.java:350)
at freemarker.core.Environment.visit(Environment.java:350)
at freemarker.core.Environment.process(Environment.java:323)
at freemarker.template.Template.process(Template.java:383)
at net.jforum.JForum.processCommand(JForum.java:291)
at net.jforum.JForum.service(JForum.java:238)
at jakarta.servlet.http.HttpServlet.service(HttpServlet.java:716)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:130)
at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:51)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:109)
at net.jforum.JForumFilter.doFilter(JForumFilter.java:45)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:109)
at com.javaranch.jforum.url.JSessionIDFilter.doFilter(JSessionIDFilter.java:27)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:109)
at com.javaranch.jforum.url.UrlFilter.doChain(UrlFilter.java:72)
at com.javaranch.jforum.url.UrlFilter.doFilter(UrlFilter.java:55)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:109)
at net.jforum.BotOverloadFilter.doFilter(BotOverloadFilter.java:86)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:109)
at net.jforum.util.legacy.clickstream.ClickstreamFilter.doFilter(ClickstreamFilter.java:50)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:109)
at net.jforum.JpaFilter.doFilter(JpaFilter.java:23)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:109)
at net.jforum.ResponseHeadersFilter.doFilter(ResponseHeadersFilter.java:22)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:109)
at com.javaranch.jforum.csrf.CsrfFilter.doFilter(CsrfFilter.java:92)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:109)
at net.jforum.JForumExecutionContextFilter.doFilter(JForumExecutionContextFilter.java:22)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:109)
at net.jforum.UrlMultiSlashFilter.doFilter(UrlMultiSlashFilter.java:27)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:109)
at net.jforum.JForumRequestCharacterEncodingFilter.doFilter(JForumRequestCharacterEncodingFilter.java:29)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:109)
at net.jforum.TrackbackFilter.doFilter(TrackbackFilter.java:52)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:109)
at net.jforum.PrematureRequestFilter.doFilter(PrematureRequestFilter.java:31)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:109)
at net.jforum.AccessBanFilter.doFilter(AccessBanFilter.java:61)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:109)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:167)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:79)
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:483)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:115)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:93)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:74)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:342)
at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:382)
at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:63)
at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:905)
at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1746)
at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:52)
at org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1148)
at org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:636)
at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:63)
at java.base/java.lang.Thread.run(Thread.java:840)
Permaculture Forums at Permies
most of the time people get this message it is because your browser has gone wonky and is trying to do silly things. Please try restarting
your browser or trying a different browser to see if the problem persists. If you are still having problems, please contact us
with what you were doing when the error occurred along with the date and time (May 24, 2026, 4:08:43 AM).
You can also email us at forums AT permies DOT com