【问题标题】:Freemarker: Boolean vs boolean get methodsFreemarker:布尔与布尔获取方法
【发布时间】:2013-01-22 09:38:16
【问题描述】:

众所周知,freemarkers beanwrapper 使用 java 的 BeanIntrospector。这导致包装的布尔值不能有一个“is”方法作为它的公共获取,而只能是一个普通的获取方法。

现在我正在做一个项目,突然间,很明显原始布尔值必须变成布尔值......当然情况很奇怪,但我们在这里。当然,所有的 freemarkers 都不再起作用了。

我想知道是否有人知道,网络上有某个地方为 freemarker 编写的 BeanWrapper 不使用 BeanIntrospector 但其他一些允许布尔值的方法是方法 getter ?我问的原因是因为我可以尝试自己编写,但该项目不允许有时间。我已经在谷歌上搜索了一段时间,但什么都想不出来(主要是因为谷歌似乎把布尔值和布尔值当作同一个词......)

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

提前致谢

肯尼

【问题讨论】:

    标签: java freemarker


    【解决方案1】:

    我无法指出您可以下载的任何解决方案。但这实际上很容易通过在 BeansWrapper 中覆盖 finetuneMethodAppearance 来实现。在那里,您可以使用任何方法制作假属性。请参阅related part of the JavaDocs

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

    【讨论】:

    • 我们确实为了获得方法解决方案而全力以赴,这正是您提到的原因。可能会有其他符合规范的技术。我知道我们将来会使用 jasper,我只是不想考虑如果 jasper 无法读取包装布尔值的方法,我们会遇到什么麻烦
    猜你喜欢
    • 2016-01-26
    • 2017-04-08
    • 1970-01-01
    • 1970-01-01
    • 2017-10-15
    • 2011-04-13
    • 2014-03-30
    • 1970-01-01
    相关资源
    最近更新 更多