无法初始化瞬态成员?

goo*_*ool 6 grails

在Grails 2.0.4中,我有一个像这样的域类:

class Foo {

    String pres
    String temp

    static transients = ['temp']

    def beforeInsert = {
        println "pres: ${pres}"
        println "temp: ${temp}"
    }
}
Run Code Online (Sandbox Code Playgroud)

在BootStrap.groovy中:

def f1 = new Foo(pres: "p1", temp: "t1")
f1.save()

def f2 = new Foo(pres: "p2")
f2.temp = "t2"
f2.save()
Run Code Online (Sandbox Code Playgroud)

然后grails run-app,我得到了:

pres: p1
temp: null
pres: p2
temp: t2
Run Code Online (Sandbox Code Playgroud)

f1和f2有什么区别,不能初始化瞬态成员?

pro*_*lux 0

升级到 Grails 2 后我遇到了同样的事情。如果您想了解更多信息,请参阅这两个 JIRA 条目:

http://jira.grails.org/browse/GRAILS-8972

http://jira.grails.org/browse/GRAILS-9098

但最终,我不得不采取与您在示例中所做的相同的工作。