【发布时间】:2015-06-18 13:04:38
【问题描述】:
这是我的域类
class TimesheetSubmission {
Date submissionDate=new Date()
String foreman
String shift
String jobId
Date date
byte[] xmlSubmission
String xmlResponse
static constraints = {
submissionDate nullable: false
foreman nullable: false
shift nullable: false
jobId nullable: false
date nullable: false
xmlSubmission nullable: true
xmlResponse nullable: false
}
static mapping = {
xmlSubmission (type: "blob")
}
}
以下是我将数据保存在数据库中的代码。
TimesheetSubmission timesheetSubmission=new TimesheetSubmission()
timesheetSubmission.foreman=Party.findById(foremanId)
timesheetSubmission.shift=shift
timesheetSubmission.jobId=jobId
timesheetSubmission.date=Date.parse("yyyy-MM-dd", date)
timesheetSubmission.xmlSubmission=sTimesheet.getBytes();
timesheetSubmission.xmlResponse="response"
timesheetSubmission.save(flush: true,failOnError: true)
在域上应用保存时出现以下错误。
[B cannot be cast to java.sql.Blob
【问题讨论】:
-
@tim_yates 我已经尝试了上面链接上的解决方案,但仍然遇到同样的问题。
-
尝试将字段从 byte[] 更改为 java.sql.Blob。
-
@VivekSadh byte[] 代码成功生成,但是在数据库中持久化数据时,它会产生问题。
标签: grails grails-orm