Добавить макрос бесплатного маркера в библиотеку jar - PullRequest
2 голосов
/ 09 июня 2011

Как добавить макрос freemarker (<#macro myMacro> ...) в библиотеку java jar и после этого использовать его (<@macro myMacro />) в других моих веб-проектах?

1 Ответ

2 голосов
/ 09 июня 2011

Шаг 1: вставьте файл шаблона в вашу библиотеку JAR с макросом, например, файл foo.ftl с макросом bar.

Шаг 2: настройте FreeMarker, чтобы он мог загружать шаблоны из этогоJAR библиотека.Один из способов сделать это - зарегистрировать ClassTemplateLoader, позвонив по номеру Configuration.setClassForTemplateLoading или напрямую зарегистрировав ClassTemplateLoader (см. документацию FreeMarker о загрузке шаблона ).В качестве альтернативы вы можете попытаться использовать URLTemplateLoader или позвонить Configuration.setServletContextForTemplateLoading, в зависимости от вашего варианта использования.

Возможно, вам даже придется объединить такой ClassTemplateLoader / URLTemplateLoader с используемым в данный момент загрузчиком шаблонов вЧтобы загрузить шаблоны из нескольких мест (см. MultiTemplateLoader ).

Шаг 3: импортировать файл шаблона макроса в namesapce из основного шаблона с помощью директивы импорта 1021*, например,

<#import "foo.ftl" as foo>

Шаг 4: вызвать макрос через его пространство имен, например,

<@foo.bar />

Готово!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...