I want to iterate over a list nested in a map, the data structure is similar:
Map<Integer, List<Integer>> groups = new TreeMap<>()
Freemarker Template:
<
${groupKey} // It OK here.
<
${item}
</
</
Detailed exception message:
FreeMarker pattern error: For the "... [...]" left operand: the expected sequence or string or something automatically converted to a string (number, date or boolean value), but this evaluates to extended_hash (wrapper: ftSimpleHash): ==> groups
So what is the problem?
PS
I tried groups.get(groupKey)instead groups[groupKey], it throws a new exception stack:
java.lang.ClassCastException: java.lang.Integer cannot be cast to java.lang.String
java.lang.String.compareTo(String.java:108)
java.util.TreeMap.getEntry(TreeMap.java:346)
java.util.TreeMap.get(TreeMap.java:273)
freemarker.template.SimpleHash.get(SimpleHash.java:160)
freemarker.core.Dot._eval(Dot.java:40)
freemarker.core.Expression.eval(Expression.java:76)
source
share