当我提交表单时,会发生输入错误。 JourneyDate
是“日期”的实例。但是,这里它变成了一个不被setter和getter接受的String。
<s:hidden name="JourneyDate" value="%{JourneyDate}"></s:hidden>
我想JourneyPlan
作为日期类型,但它变成了String。
答案 0 :(得分:0)
尝试在将值传递给getter / setter之前拦截该值。例如,从表单发送JourneyDateString,从String创建一个Date,然后将其传递给getter / setter。类似的东西:
public void setJourneyDateString(String journeyDateString)
{
//journeyDateString could be "2013-03-28" for example
Date journeyDate = new SimpleDateFormat("yyyy-MM-dd").parse(journeyDateString);
setJourneyDate(journeyDate);
}
答案 1 :(得分:0)
您在value
属性中设置的对象会将其类型保持为Date
。然后,您需要在操作中定义相应的setter以设置Date
的值。如果将值放在标记的正文中,它将转换为字符串。