Имея шаблон свободного маркера, я хочу получить необходимую модель данных для его обработки.
Я не смог найти какой-либо метод в классе freemarker.template.Template
для этого.
Итак, я начал использовать freemarker.core.TemplateElement
, содержащий разобранное дерево шаблона (начиная с template.getRootTreeNode()
).
Но эти классы помечены как «только для внутреннего использования»,поэтому мне интересно, есть ли "официальный" способ получить это.
В основном я хочу сопоставить, например, этот шаблон:
<h1>Welcome ${user}!</h1>
<a href="${latestProduct.url}">${latestProduct.name}</a>!
К какому-либо объекту схемы, содержащему это:
(root)
|
+- user
|
+- latestProduct
|
+- url
|
+- name
Если у freemarker нет общедоступного интерфейса для этого, я был бы очень рад получить подсказки о других движках Java-шаблонов, которые поддерживают это.