2013-01-12 158 views
0

我使用Grails作为服务器和ExtJS作为客户端。现在我需要从JSON更新具有特定日期值的域的日期字段。但是,当我想具体的日期错误是想更新此解析JSON日期

不能施放对象“DD MM,YYYY”带班“java.lang.String中”上课“java.util.Date”

现在我该如何更新从JSON到数据库的具体日期?这里是我的服务器更新动作:

def update(json) { 
    def count = 0 
    def flag = true 
    def installments = [] 
    def pdate = json.payDate 
    def payDate = pdate.format("dd MM, yyyy") 
    def newCashPay = Double.parseDouble("${json.cashPay}") 
    def newReturnAmount = Double.parseDouble("${json.returnAmount}") 
    if(json instanceof JSONObject){    
     def c = Installment.get(Integer.parseInt("${json.id}")) 
     if(c){ 
      c.activeFlag = true 
      c.cashPay = newCashPay 
      c.returnAmount = newReturnAmount 
      c.payDate = payDate 
      if(c.validate()){ 
       c.save() 
      }else{       
       c.errors.each { 
        println it 
       } 
      } 
     } 

     def installment = [id:c.id, accNo:c.accNo, memberNo:c.memberNo, branchId:c.branchId, installmentNo:c.installmentNo, weekStart:c.weekStart, weekEnd:c.weekEnd, payDate:c.payDate, payAmount:c.payAmount, lateFee:c.lateFee, cashPay:c.cashPay, returnAmount:c.returnAmount, activeFlag:c.activeFlag] 
     installments << installment 
     flag = flag && true 
     count++ 
    } 
} 

回答

3

而不是

def payDate = pdate.format("dd MM, yyyy") 

不要你的意思

def payDate = Date.parse("dd MM, yyyy", pdate) 
+0

是的,这是解决方案。非常感谢 –