Java 自由标记:freemarker.core.InvalidReferenceException

Java 自由标记:freemarker.core.InvalidReferenceException,java,spring,freemarker,Java,Spring,Freemarker,我使用freemarker模板,并在下面的ftl文件中给出了代码 <#if (actionErrors?exists && actionErrors?size > 0)> <ul> <#list actionErrors as error> <li><span<#rt/> <#if parameters.cssClass?exists> class="${para

我使用freemarker模板,并在下面的ftl文件中给出了代码

<#if (actionErrors?exists && actionErrors?size > 0)>
    <ul>
    <#list actionErrors as error>
        <li><span<#rt/>
<#if parameters.cssClass?exists>
 class="${parameters.cssClass?html}"<#rt/>
</#if>
<#if parameters.cssStyle?exists>
 style="${parameters.cssStyle?html}"<#rt/>
</#if>
>${error}</span></li>
    </#list>
    </ul>
</#if>
0)>
  • ${error}
上面的代码给出了以下错误

freemarker.core.InvalidReferenceException:表达式错误为 第33行未定义

我用包装${error}并重试。但它给出了同样的问题。然后我使用了前面提到的${error.value!'N/A'}。但这并没有解决问题。请帮我做这个

先谢谢你


谢谢。

如前所述,
错误值似乎未设置。执行此操作时:

${error.value!"Default"}
${(error.value)!"Default"}
…如果未设置
错误
属性,则提供默认值。它仍然假设设置了
error
,以便从中获取
属性。如果您这样做:

${error.value!"Default"}
${(error.value)!"Default"}
…如果未设置
error
error.value
,则默认值将适用。括号表示“将默认值应用于封闭表达式”。如果Freemarker在解析封闭表达式时在任何地方遇到缺少的值,它将应用默认值

这也适用于
??
操作员:

<#if (error.value)??>The entire expression error.value is valid</#if>
整个表达式error.value有效

如前所述,
错误
值似乎未设置。执行此操作时:

${error.value!"Default"}
${(error.value)!"Default"}
…如果未设置
错误
属性,则提供默认值。它仍然假设设置了
error
,以便从中获取
属性。如果您这样做:

${error.value!"Default"}
${(error.value)!"Default"}
…如果未设置
error
error.value
,则默认值将适用。括号表示“将默认值应用于封闭表达式”。如果Freemarker在解析封闭表达式时在任何地方遇到缺少的值,它将应用默认值

这也适用于
??
操作员:

<#if (error.value)??>The entire expression error.value is valid</#if>
整个表达式error.value有效

如前所述,
错误
值似乎未设置。执行此操作时:

${error.value!"Default"}
${(error.value)!"Default"}
…如果未设置
错误
属性,则提供默认值。它仍然假设设置了
error
,以便从中获取
属性。如果您这样做:

${error.value!"Default"}
${(error.value)!"Default"}
…如果未设置
error
error.value
,则默认值将适用。括号表示“将默认值应用于封闭表达式”。如果Freemarker在解析封闭表达式时在任何地方遇到缺少的值,它将应用默认值

这也适用于
??
操作员:

<#if (error.value)??>The entire expression error.value is valid</#if>
整个表达式error.value有效

如前所述,
错误
值似乎未设置。执行此操作时:

${error.value!"Default"}
${(error.value)!"Default"}
…如果未设置
错误
属性,则提供默认值。它仍然假设设置了
error
,以便从中获取
属性。如果您这样做:

${error.value!"Default"}
${(error.value)!"Default"}
…如果未设置
error
error.value
,则默认值将适用。括号表示“将默认值应用于封闭表达式”。如果Freemarker在解析封闭表达式时在任何地方遇到缺少的值,它将应用默认值

这也适用于
??
操作员:

<#if (error.value)??>The entire expression error.value is valid</#if>
整个表达式error.value有效

您是如何解决此问题的?您是如何解决此问题的?您是如何解决此问题的?您是如何解决此问题的?