我正在尝试使用此代码检索数据
<tests>
<#if tests?exists>
<#list tests as object >
<test>
<#list object?keys as key >
<${key}>
<#if object[key]?exists>
<#if object[key]?is_hash> HASH
<#elseif object[key]?is_sequence>
<#list object[key] as hashKey>
</#list>
<#else> ${object[key]}</#if><#else>null
</#if>
</${key}>
</#list>
</test>
</#list>
</#if>
但收到错误?size is unsupported for: freemarker.ext.beans.SimpleMethodModel
但<#elseif object[key]?is_sequence> sequence
返回序列。据我所知,我的object[key]
是一个序列。
有什么想法吗?
答案 0 :(得分:1)
发生该错误是因为由于某些历史错误,Java方法是序列(内置ObjectWrapper
- s,即),但它们不实现?size
。 (它们是序列,因此foo.m[x]
等同于foo.m(x)
)。将&& !something?is_method
添加到条件中避免这种情况。