Struts 2 - Date实例变为String

时间:2013-03-28 07:35:58

标签: forms hibernate struts2 submit action

当我提交表单时,会发生输入错误。 JourneyDate是“日期”的实例。但是,这里它变成了一个不被setter和getter接受的String。

<s:hidden name="JourneyDate" value="%{JourneyDate}"></s:hidden>

我想JourneyPlan作为日期类型,但它变成了String。

2 个答案:

答案 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的值。如果将值放在标记的正文中,它将转换为字符串。