如何在Grails中坚持数据库中的Closure?

时间:2012-11-14 23:57:18

标签: hibernate grails serialization groovy

我试图将Groovy Closure(allegedly serializable)作为我的一个Grails域对象的属性。目前我基本上是这样做的:

class MyClass {
    ....
    Closure myClosure
    static mapping = { myClosure size: 1024 * 1024, type: 'blob' }
}
new MyClass(myClosure: { ... do some stuff .. }.dehydrate()).save()

我尝试将'blob'更改为'binary',但这不起作用。我收到类似于的错误: context.GrailsContextLoader执行bootstraps时出错:BootStrap $ _obj_closure3无法强制转换为java.sql.Blob

我应该如何设置域对象以便能够存储闭包?

我正在使用带有Groovy 2.0的Grails 2.1.1

1 个答案:

答案 0 :(得分:3)

我需要这个:

static mapping = {
    myClosure sqlType: 'blob'
}