Struts2 在struts 2操作中从struts/dojo datetimepicker获取空值?

Struts2 在struts 2操作中从struts/dojo datetimepicker获取空值?,struts2,dojo,struts2-json-plugin,Struts2,Dojo,Struts2 Json Plugin,我在Struts2Web应用程序的jsp页面中使用了两个struts/DojoDateTimePicker。它们允许选择日期并正确显示,但当我提交表单并访问变量中的datetimepicker值(使用getter和setter)时,它返回空值,该值与jsp表单中datetimepicker的名称相同 我想知道如何在struts操作中获取datetimepickers值,然后将它们存储在MySQL数据库中 我的jsp页面--> MySQL表--> Datetimepicker以2013-03-27

我在Struts2Web应用程序的jsp页面中使用了两个struts/DojoDateTimePicker。它们允许选择日期并正确显示,但当我提交表单并访问变量中的datetimepicker值(使用getter和setter)时,它返回空值,该值与jsp表单中datetimepicker的名称相同

我想知道如何在struts操作中获取datetimepickers值,然后将它们存储在MySQL数据库中

我的jsp页面-->

MySQL表-->


Datetimepicker以
2013-03-27T00:00:00+11:00
的格式为您提供值,您使用的是
private String Date
,但您使用的是导致问题的
private Date sDate
属于missmacth类型。要解决此问题,需要将datetimepicker类型转换为
java.util.Date格式

String obj=“2013-03-27T00:00:00+11:00”;
SimpleDataFormat格式化程序=新的SimpleDataFormat(“dd MMM yyyy”);
试一试{
SimpleDataFormat parseFormatter=新SimpleDataFormat(“yyyy-MM-dd”);
//SimpleDateFormat dt=新的SimpleDateFormat(“YYYY-mm-dd hh:mm:ss+hh:mm”);
Date-Date=parseFormatter.parse(obj);
String formattedDate=格式化程序.format(日期);
System.out.println(格式化日期);
}捕获(解析异常){
//TODO自动生成的捕捉块
e、 printStackTrace();
}

我更正了我的getter和setter,在下面几行中还有另一个错误-->

我将上面的代码行替换为以下-->

 <%@taglib prefix="sx" uri="/struts-dojo-tags"%>
 <html>
 <head>
 <sx:head />
 </head>
 <body>
 <form name="cFrom" method="post" action="saveForm"  
 enctype="multipart/form-data">
  state Date: <sx:datetimepicker formatLength="medium" value="%{'today'}"     
  name="sDate"></sx:datetimepicker><br/>
  End Date: <sx:datetimepicker formatLength="medium" name="eDate">    
 </sx:datetimepicker><br/>
 <button type="submit">Save</button>
 </form>
 </body>
 </html>
 import java.util.*;
 public class saveFormAction extends ActionSupport{

private static final long serialVersionUID = 1L;
private Date sDate;
    private Date eDate;
    public Date getsDate() {
    return sDate;
}

public void setsDate(Date sDate) {
    this.sDate = sDate;
}

public Date geteDate() {
    return eDate;
}

public void seteDate(Date eDate) {
    this.eDate = eDate;
}
    public String saveForm() throws SQLException{           
    Connection con=DBConnect.makeConnection();
    PreparedStatement pst=con.prepareStatement("INSERT INTO saveForm(Start_ON,  
    Expire_On) values(?,?)");
    pst.setDate(1, sDate);
    pst.setDate(2, eDate);
    int i=0;
    i=pst.executeUpdate();
    if(i>0){
        return SUCCESS; 
    }
    return ERROR;
   }
   }
 CREATE TABLE saveform(start_on DATE, Expire_On DATE)
pst.setDate(1, sDate);
pst.setDate(2, eDate);
pst.setDate(1, new java.sql.Date(sDate.getTime()));
pst.setDate(2, new java.sql.Date(eDate.getTime()));