我有一个Struts + Velocity结构,比如一个Person类,它的一个属性是Car对象(有自己的getter / setter方法),它被映射到一个Velocity表单,提交给一个Action,使用ModelDriven和getModel结构。
如果car属性不为null或car.id!= 0,则在显示“View Car”的表单上放置一个按钮,如果car为null或car.id = 0,则显示另一个按钮“Choose Car”。
我如何编码。我在模板文件中尝试了类似的东西:
#if($car != null)
#ssubmit("name=view" "value=View Car")
#else
#ssubmit("name=new" "value=Choose Car")
#end
但是我一直在 #if 行中收到有关Null值的错误。
我还在Person中创建了一个布尔方法hasCar()来尝试,但我无法访问它,我不知道为什么。
Velocity + Struts教程很难找到或有很好的信息。
由于
答案 0 :(得分:6)
您应该将#if行更改为:
#if($car)
答案 1 :(得分:2)
在即将发布的Velocity 1.6版本中,您将能够#if( $car == $null )
无错误消息。这将允许您在$car
为空时和何时为空时轻松区分。要做到这一点,现在需要#if( $car && $car != false )
,这不是那么友好。