Forms Struts 2-日期实例变为字符串

Forms Struts 2-日期实例变为字符串,forms,hibernate,struts2,submit,action,Forms,Hibernate,Struts2,Submit,Action,当我提交表单时,会出现输入错误。JourneyDate是“Date”的实例。但是,在这里,它变成了setter和getter不接受的字符串 <s:hidden name="JourneyDate" value="%{JourneyDate}"></s:hidden> 我想要JourneyPlan作为日期类型,但它变成了字符串 在将值传递给getter/setter之前,尝试拦截该值。例如,从表单发送JourneyDateString,从该字符串创建日期,然后将其传递给g

当我提交表单时,会出现输入错误。JourneyDate是“Date”的实例。但是,在这里,它变成了setter和getter不接受的字符串

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

我想要JourneyPlan作为日期类型,但它变成了字符串

在将值传递给getter/setter之前,尝试拦截该值。例如,从表单发送JourneyDateString,从该字符串创建日期,然后将其传递给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);
}    

在value属性中设置的对象将保持其类型为Date。然后需要在操作中定义相应的setter来设置日期的值。如果您将值放在标记体中,它将转换为字符串。

您是否需要一些代码,因为无法直观显示场景或您面临的问题。您希望获取哪些值以及需要哪些值?请查看Struts2类型转换:。在Struts2和一般情况下,有更好的方法来实现这一点。