2012-01-12 2 views
0

Как настроить выражение Freemarker, синтаксис вроде следующегоКак настроить выражение freemarker?

<#if name?myExpr> 
+0

Что вы подразумеваете под «настройкой»? Чего вы пытаетесь достичь на самом деле? –

+0

Да. «MyExpr» не является встроенным выражением Freemarker. «MyExpr» был достигнут через мой класс. –

ответ

0

Вы не можете сделать это с ?. Точка оператора ? - это то, что имена функций приходят после того, как они зарезервированы для языка шаблонов FreeMarker, поэтому новые функции могут быть добавлены в новые выпуски FreeMarker без нарушения обратной совместимости.

Вы можете, однако, добавить функции, которые называются foo(param). Я понимаю, что люди предпочли бы стиль postfix-call (param?foo), но это касается упомянутой проблемы совместимости. (Я также рекомендовал [email protected] для этого, но AFAIR идея не была популярна в списке.)

+0

Связанный вопрос: http://stackoverflow.com/questions/10486619/invoke-java-method-with-parameters-from-freemarker. – jarmod