在grails中保存域对象

在grails中保存域对象,grails,gorm,grails-domain-class,bootstrapping,Grails,Gorm,Grails Domain Class,Bootstrapping,我无法保存Windows 8.1和Centos 7上grails中的域对象。每当我尝试创建一个空域类并将其保存在BootStrap.groovy中时,运行应用程序后总是会收到相同的错误消息: Error | 2014-11-10 14:53:44,225 [localhost-startStop-1] ERROR context.GrailsContextLoaderListener - Error initializing the appl ication: Method on class

我无法保存Windows 8.1和Centos 7上grails中的域对象。每当我尝试创建一个空域类并将其保存在
BootStrap.groovy
中时,运行应用程序后总是会收到相同的错误消息:

Error |
2014-11-10 14:53:44,225 [localhost-startStop-1] ERROR context.GrailsContextLoaderListener  - Error initializing the appl
ication: Method on class [com.test.Book] was used outside of a Grails application. If running in the context of a test
 using the mocking API or bootstrap Grails correctly.
Message: Method on class [com.test.Book] was used outside of a Grails application. If running in the context of a test
 using the mocking API or bootstrap Grails correctly.
    Line | Method
->>    5 | doCall                           in BootStrap$_closure1
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|    327 | evaluateEnvironmentSpecificBlock in grails.util.Environment
|    320 | executeForEnvironment . . . . .  in     ''
|    296 | executeForCurrentEnvironment     in     ''
|    262 | run . . . . . . . . . . . . . .  in java.util.concurrent.FutureTask
|   1145 | runWorker                        in java.util.concurrent.ThreadPoolExecutor
|    615 | run . . . . . . . . . . . . . .  in java.util.concurrent.ThreadPoolExecutor$Worker
^    745 | run                              in java.lang.Thread
| Error Forked Grails VM exited with error
我的域类:

package com.test

class Book {
    String name
    static constraints = {
    }
}
BootStrap.groovy:

import com.test.Book
class BootStrap {

    def init = { servletContext ->
        new Book(name: "My Book").save()
    }
    def destroy = {
    }
}
我尝试了grails的2.4.32.4.4版本。我的jdk版本是1.7.0_71(也用jdk6和jdk8试用过)。有趣的是,我在Ubuntu和OpenSuse上尝试了确切的步骤,我成功地保存了这个对象。那么,问题出在哪里呢


关于,问题已经解决了。grails似乎在操作系统的语言包方面存在问题。我使用的是Windows和Centos的土耳其语语言包。现在我把它改成了英语,问题就解决了。

Book.groovy
grails-app/domain/com/test/
中定义的?您是否使用默认的Hibernate插件(查看
BuildConfig.groovy
)?我已经使用createdomain class命令创建了域类,因此在grails app/domain/com/test文件夹中有Book.groovy文件。我使用的是默认的hibernate插件:hibernate4:4.3.6.1。这个应用程序是否从旧版本的Grails升级?如果您的一些代码是使用较旧版本的Grails编译的,则可能会发生这种情况(取决于许多其他因素)。如果不确定,请验证运行
grailsclean
后问题是否仍然存在。问题是,我在一个新项目上收到了该错误消息。简单地说,我正在创建一个新项目并创建一个空域类。当我尝试在引导中保存它时,它失败了。我不知道可能出了什么问题。如果您在提交一份JIRA,并提供详细信息,我们将进行查看。抱歉给你添麻烦了。