在grails中保存域对象
我无法保存Windows 8.1和Centos 7上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
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.3和2.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,并提供详细信息,我们将进行查看。抱歉给你添麻烦了。