Теги JSP в шаблоне Freemarker
Я хочу использовать некоторые пользовательские теги в шаблоне freemarker, который достаточно прост, поскольку я могу включить JspSupportServlet в свой веб.xml-файл и включить в шаблон следующую строку.
<#assign my=JspTaglibs["/WEB-INF/mytaglib.tld"] />
однако, как я могу это сделать, если .tld поставляется в JAR-файле внутри каталога META-INF? Я попробовал оба безрезультатно.
<#assign my=JspTaglibs["/META-INF/mytaglib.tld"] />
<#assign my=JspTaglibs["/mynamespace"] />
1 ответов
FreeMarker автоматически сканирует все файлы JAR в каталоге WEB-INF/lib. Если найдет .файлы tld внутри каталога META-INF JAR, например, ваш META-INF/mytaglib.tld, он будет заглядывать внутрь него, чтобы найти <uri>
тег. Если он найдет его, он сделает taglib доступным через этот URI, e.g taglib определяется как
<taglib>
<shortname>my custom taglib</shortname>
<uri>http://example.org/mytaglib</uri>
<!-- ... -->
</taglib>
может использоваться в FreeMarker через
<#assign my=JspTaglibs["http://example.org/mytaglib"] />
по крайней мере это работало для меня...