You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@freemarker.apache.org by "Daniel Dekany (JIRA)" <ji...@apache.org> on 2015/11/12 23:17:11 UTC
[jira] [Resolved] (FREEMARKER-9) Can't use macro inside
#if-#elseif-#else
[ https://issues.apache.org/jira/browse/FREEMARKER-9?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Daniel Dekany resolved FREEMARKER-9.
------------------------------------
Resolution: Invalid
It's because macro call tags always has to be explicitly closed (similarly to XML tags), so {{<@testMacro "A">}} is a start-tag, and hence the enclosed {{#else}} has no corresponding {{#if}}. Try {{<@testMacro "A" />}}, and it will work.
> Can't use macro inside #if-#elseif-#else
> ----------------------------------------
>
> Key: FREEMARKER-9
> URL: https://issues.apache.org/jira/browse/FREEMARKER-9
> Project: Apache Freemarker
> Issue Type: Bug
> Components: engine
> Affects Versions: 2.3.23
> Environment: Windows 7
> Reporter: Henrik Karlsson
>
> When I put a call to a macro inside an #if-#elseif-#else I get this error:
> Unexpected directive, "<#else>". Check whether you have a valid #if-#elseif-#else structure.
> Example template:
> {noformat}
> <#macro testMacro value>
> ${value}
> </#macro>
> <#if (true)>
> <@testMacro "A">
> <#else>
> <@testMacro "B">
> </#if>
> {noformat}
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)