2012-05-31 21 views
2

我有一个域名就像
如何在Grails中删除java.sql.BatchUpdateException?

class BusinessOrganization { 

    static hasMany = [organizationBusinessTypes:OrganizationBusinessType] 

    String name 
    String icon 

    static constraints = { 
     name(blank:false,unique:true) 
     icon(unique:true) 
    } 

    String toString() { 
     return "${name}" 
    } 

} 

同时节省了第一次的数据将被保存,并没有错误。但是,当我试图挽救我第二次出现此错误:

Class java.sql.BatchUpdateException Message 
Batch entry 0 insert into business_organization (version, icon, name, id) values ('0', '', '', '2') was aborted. Call getNextException to see the cause. 


它说:

def save() { 
23:  def businessOrganizationInstance = new BusinessOrganization(params) 
24:  if (!businessOrganizationInstance.save(flush: true)) { 
25:   render(view: "create", model: [businessOrganizationInstance: businessOrganizationInstance]) 
26:   return 
27:  } 

错误在第24行,我无法找出我做错了。在其他领域,这工作得很好。请有人帮忙。我是新来的Grails,现在被困在这里。我使用PostgreSQL

回答

0

尝试进入

insert into business_organization (version, icon, name, id) values ('0', '', '', '2') 

直接到你的数据库(在控制台或pgAdmin的),并检查是否有异常。

另外请注意,您对名称和图标值赋予了唯一性约束 - 请检查保存的条目中的值。

0

包裹保存(第24行)中的try/catch和提供适当的反馈,以视图层