Freemarker iterating over hashmap keys
freemarker, java
Solution
Edit: Don't use this solution with FreeMarker 2.3.25 and up, especially not `.get(prop)`. See other answers.
You use the built-in keys function, e.g. this should work:
<#list user?keys as prop>
${prop} = ${user.get(prop)}
</#list>
Problem
Freemarker has two collection datatypes, lists and hashmaps Is there a way to iterate over hashmap keys just as we do with lists? So if I have a var with data lets say: ``` user : { name : "user" email : "looser@everything.com" homepage : "http://nosuchpage.org" } ``` I would like to print all the user's properties with their value. This is invalid, but the goal is clear: ``` <#list user.props() as prop> ${prop} = ${user.get(prop)} </#list> ```