Я пытаюсь получить доступ к элементам в HashMap.Ключи этой HashMap определены в Enum.
После просмотра документации я решил, что для того, чтобы получить доступ к Enum, я должен отправить его во Freemarker следующим образом:
BeansWrapper wrapper = BeansWrapper.getDefaultInstance();
TemplateHashModel enumModels = wrapper.getEnumModels();
TemplateHashModel fieldTypeModel = (TemplateHashModel)enumModels.get("com.example.MinisiteFieldType");
root.put("fieldtypes", fieldTypeModel);
В моем .ftl я пробовал следующее:
${myelement.mymap[fieldtypes.SEOTEXT]}
Однако я получаю: Выражение myelement.mymap [fieldtypes.SEOTEXT] не определено в строке X ...
Я хотел убедиться, что я правильно отобразил перечисление, поэтому я попытался:
${fieldtypes.SEOTEXT}
Это ничего не печатало, оставляя меня удивленным, прошел ли он, или просто не могло быть напечатано.
В отладке Java, непосредственно перед вставкой TemplateHashModel в мою корневую карту, 'fieldTypeModel' заполняется правильными данными ...
Любая помощь будет оценена!
Барт