Freemarker没有在哈希中找到现有元素

时间:2013-11-13 16:10:20

标签: java freemarker

在Freemarker中有一个非常奇怪的问题。我有一个JSON映射prices,其中包含一些对(String - > Object)。以下代码应打印地图中的所有对:

[#list prices?keys as prop]
    ${prop?c} ${prices[prop?c]!"nothing"} 
[/#list]

但结果是:

1000010786 nothing 1000010704 nothing 

也就是说,它找到了键,但在查找链接到键的元素时,它表示没有这样的元素。任何人都知道为什么会出现这种情况?

1 个答案:

答案 0 :(得分:1)

问题在于Map中的密钥不是String - 但是数字,但对于[],您提供的String为{{{ 1}}将数字转换为字符串。删除?c会导致另一个问题,因为?c仅支持[]个密钥...关于这一点,请在此处查看我的答案:FreeMarker Complex Collection