1

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

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

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

4

2 回答 2

0

在将值传递给 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);
}    
于 2013-03-28T16:44:14.237 回答
0

您在value属性中设置的对象将保持其类型为Date. 然后需要在action中定义相应的setter来设置Date. 如果您将值放在标签的正文中,它将转换为字符串。

于 2013-03-28T17:31:00.193 回答