Freemarker: Comment parcourir la carte en utilisant des enums comme clés

Le code suivant ne fonctionne pas car Freemarker semble fonte de la valeur de l'expression à l'intérieur de [] à la Chaîne et ensuite de l'utiliser comme une clé, ce qui n'est pas ce qui est réellement prévu.

La préparation d'un modèle:

Map<MyEnum, Object> myMap;
myMap.put(MyEnum.FOO, "Foo");
myMap.put(MyEnum.BAR, "Bar");
templateModel.put("myMap", myMap);

mon.ftl:

<#list myMap?keys as key>
    <#assign value = myMap[key]>
    <li>${key} = ${value}</li>
</#list>

Dans le Freemarker documentationil est décrit comment accéder à la Enum lui-même, mais je n'ai rien trouvé sur comment pour obtenir une valeur de hachage en utilisant Enum comme une clé.

Merci.

source d'informationauteur Alex Vayda