【问题标题】:Reading model objects mapped in Velocity Templates读取在 Velocity 模板中映射的模型对象
【发布时间】:2008-08-23 18:59:43
【问题描述】:

我有一个 Struts + Velocity 结构,例如一个 Person 类,它的一个属性是一个 Car 对象(具有自己的 getter/setter 方法),它使用 ModelDriven 映射到提交给 Action 的 Velocity 表单和 getModel 结构。

如果 car 属性不为 null 或 car.id != 0,我应该在表单上放置一个显示“查看汽车”的按钮,或者如果 car 为 null 或 car.id = 0,则显示另一个按钮“选择汽车”。

如何编码。我在模板文件中尝试了类似的东西:

#if($car != null)
  #ssubmit("name=view" "value=View Car")
#else
  #ssubmit("name=new" "value=Choose Car")
#end

但我在 #if 行中不断收到关于 Null 值的错误。

我还在 Person 中创建了一个布尔方法 hasCar() 来尝试,但我无法访问它,我不知道为什么。

而且 Velocity + Struts 教程很难找到或有很好的信息。

谢谢

【问题讨论】:

    标签: java struts velocity


    【解决方案1】:

    您应该将#if 行更改为:

    #if($car)
    

    【讨论】:

      【解决方案2】:

      在即将发布的 Velocity 1.6 版本中,您将能够执行 #if( $car == $null ) 而不会出现错误消息。这将使您能够轻松地区分$car 何时为空和何时为假。现在要做到这一点需要#if( $car && $car != false ),这不是那么友好。

      【讨论】:

      • 嗨,Nathan 很高兴在这里见到你,我已经广泛使用了 Velocity 邮件列表,并且总能找到你的帮助。我正在为你的答案投票,继续努力!
      猜你喜欢
      • 2011-09-08
      • 2011-03-30
      • 2015-08-27
      • 1970-01-01
      • 1970-01-01
      • 2013-02-07
      • 1970-01-01
      • 1970-01-01
      • 2015-07-01
      相关资源
      最近更新 更多