Freemarker:Boolean vs boolean get方法

时间:2013-01-22 09:38:16

标签: java freemarker

众所周知,freemarkers beanwrapper使用java的BeanIntrospector。这有一个结果,包装布尔值不能有一个“是”的方法,因为它的公共获取,但只需要一个普通的get方法。

现在我正在开展一个突然变得明显原始布尔值必须变成布尔的项目...奇怪的情况但我们在这里。当然,所有的自由标记都不再适用了。

我想知道是否有人知道,网上有一些BeanWrapper为freemarker编写,不使用BeanIntrospector但是其他一些方式允许布尔人拥有的是方法getter?我问的原因是因为我可以尝试自己编写,但项目只是不允许时间。我已经谷歌搜索了一段时间,但无法想出任何东西(主要是因为谷歌似乎采用布尔和布尔作为同一个词...)

如果没有......我只是让其中一个小辈改变所有的方法来获得...那对那个人来说这将是一个有趣的任务......

提前致谢

肯尼

1 个答案:

答案 0 :(得分:1)

我无法指出您可以下载的任何解决方案。但是通过覆盖BeansWrapper中的finetuneMethodAppearance实际上很容易做到这一点。在那里你可以用任何方法制作假物业。请参阅related part of the JavaDocs

OTOH,可能最好的做法是将这些方法更改为get方法,因为FreeMarker不是唯一符合JavaBeans规范的组件。因此,即使你在FreeMarker中解决了这个问题,你仍然可以在其他地方遇到同样的问题。