title: freemarker.core.InvalidReferenceException
body: <p>FreeMarker template error!</p>
  
  <pre><code>Expression activity.activityId is undefined on line 47, column 19 in 
     WEB-INF/planning/activitiesList.ftl.
  </code></pre>
  
  <p>The problematic instruction:</p>
  
  <pre><code>${activity.activityId} [on line 47, column 17 in WEB-INF/planning/activitiesList.ftl]
  in user-directive activityList.activitiesList [on line 72, column 11 in WEB-INF/planning/activities.ftl]
  </code></pre>
  
  <p>Stacktrace:</p>
  
  <pre><code>freemarker.core.InvalidReferenceException: Expression activity.activityId is undefined on line 47, column 19 in WEB-INF/planning/activitiesList.ftl.
  at freemarker.core.TemplateObject.assertNonNull(TemplateObject.java:125)
  at freemarker.core.Expression.getStringValue(Expression.java:118)
  at freemarker.core.Expression.getStringValue(Expression.java:93)
  at freemarker.core.DollarVariable.accept(DollarVariable.java:76)
  at freemarker.core.Environment.visit(Environment.java:221)
  at freemarker.core.MixedContent.accept(MixedContent.java:92)
  at freemarker.core.Environment.visit(Environment.java:221)
  at freemarker.core.IfBlock.accept(IfBlock.java:82)
  at freemarker.core.Environment.visit(Environment.java:221)
  at freemarker.core.MixedContent.accept(MixedContent.java:92)
  at freemarker.core.Environment.visit(Environment.java:221)
  at freemarker.core.IteratorBlock$Context.runLoop(IteratorBlock.java:167)
  at freemarker.core.Environment.visit(Environment.java:428)
  at freemarker.core.IteratorBlock.accept(IteratorBlock.java:102)
  at freemarker.core.Environment.visit(Environment.java:221)
  at freemarker.core.IfBlock.accept(IfBlock.java:82)
  at freemarker.core.Environment.visit(Environment.java:221)
  at freemarker.core.MixedContent.accept(MixedContent.java:92)
  at freemarker.core.Environment.visit(Environment.java:221)
  at freemarker.core.Macro$Context.runMacro(Macro.java:172)
  at freemarker.core.Environment.visit(Environment.java:614)
  at freemarker.core.UnifiedCall.accept(UnifiedCall.java:106)
  at freemarker.core.Environment.visit(Environment.java:221)
  at freemarker.core.MixedContent.accept(MixedContent.java:92)
  at freemarker.core.Environment.visit(Environment.java:221)
  at freemarker.core.IfBlock.accept(IfBlock.java:82)
  at freemarker.core.Environment.visit(Environment.java:221)
  at freemarker.core.MixedContent.accept(MixedContent.java:92)
  at freemarker.core.Environment.visit(Environment.java:221)
  at freemarker.core.Environment.process(Environment.java:199)
  at freemarker.template.Template.process(Template.java:259)
  at org.apache.struts2.views.freemarker.FreemarkerResult.doExecute(FreemarkerResult.java:215)
  at org.apache.struts2.dispatcher.StrutsResultSupport.execute(StrutsResultSupport.java:186)
  at com.opensymphony.xwork2.DefaultActionInvocation.executeResult(DefaultActionInvocation.java:371)
  at com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:275)
  at 
  </code></pre>