grails - 执行bootstrap时出错(创建名为'messageSource'的bean时出错)

时间:2011-12-09 22:04:35

标签: grails

我做了一些看似无害的更改(添加了一些域类,添加了插件购物车),现在显然BootStrap.groovy类根本没有执行。

虽然我对BootStrap.groovy进行了一些更改,但我还原了一个以前很好的文件,该文件工作正常,误会为此目瞪口呆。另外,在好的(旧的)BootStrap.groovy中,我在init操作的顶部放了一些println语句,但是这些语句没有打印出来,甚至似乎都没有达到。最后,我卸载了插件,之后,手动删除了购物车插件文件夹。

您知道这个错误是什么,还是有任何调试指导? (我正在运行Grails 1.3.7)

Running Grails application..
Configuring Spring Security ...
Configuring Spring Security UI ...
  

2011-12-09 13:51:33,036 [main] ERROR context.GrailsContextLoader -   执行bootstraps时出错:创建名称为bean的错误   ' messageSource':bean的初始化失败;嵌套异常是   org.springframework.beans.factory.BeanCreationException:错误   使用名称' transactionManager'创建bean:无法解析引用   to bean' sessionFactory'设置bean属性' sessionFactory&#39 ;;   嵌套异常是   org.springframework.beans.factory.BeanCreationException:错误   创建名为' sessionFactory'的bean:调用init方法   失败;嵌套异常是org.hibernate.MappingException:Type   [null]不是基本类型或域类,无法映射。   在[mapping]块中指定类型或使用基本类型   (字符串,整数等)   org.springframework.beans.factory.BeanCreationException:错误   创建名为' messageSource'的bean:bean的初始化   失败;嵌套异常是   org.springframework.beans.factory.BeanCreationException:错误   使用名称' transactionManager'创建bean:无法解析引用   to bean' sessionFactory'设置bean属性' sessionFactory&#39 ;;   嵌套异常是   org.springframework.beans.factory.BeanCreationException:错误   创建名为' sessionFactory'的bean:调用init方法   失败;嵌套异常是org.hibernate.MappingException:Type   [null]不是基本类型或域类,无法映射。   在[mapping]块中指定类型或使用基本类型   (字符串,整数等)at   org.grails.tomcat.TomcatServer.startSecure(TomcatServer.groovy:289)     at grails.web.container.EmbeddableServer $ startSecure.call(未知   来源)at   _GrailsRun_groovy $ _run_closure5_closure12.doCall(_GrailsRun_groovy:152)     在   _GrailsRun_groovy $ _run_closure5_closure12.doCall(_GrailsRun_groovy)at at   _GrailsS​​ettings_groovy $ _run_closure10.doCall(_GrailsS​​ettings_groovy:280)     at _GrailsS​​ettings_groovy $ _run_closure10.call(_GrailsS​​ettings_groovy)     在_GrailsRun_groovy $ _run_closure5.doCall(_GrailsRun_groovy:149)at at   _GrailsRun_groovy $ _run_closure5.call(_GrailsRun_groovy)在_GrailsRun_groovy.runInline(_GrailsRun_groovy:116)在_GrailsRun_groovy.this $ 4 $ runInline(_GrailsRun_groovy)在_GrailsRun_groovy $ _run_closure2.doCall(_GrailsRun_groovy:66)在RunApp $ _run_closure1.doCall(RunApp.groovy:30 ) 在   gant.Gant $ _dispatch_closure5.doCall(Gant.groovy:381)at   gant.Gant $ _dispatch_closure7.doCall(Gant.groovy:415)at   gant.Gant $ _dispatch_closure7.doCall(Gant.groovy)at   gant.Gant.withBuildListeners(Gant.groovy:427)at   gant.Gant.this $ 2 $ withBuildListeners(Gant.groovy)at   gant.Gant $ this $ 2 $ withBuildListeners.callCurrent(Unknown Source)at   gant.Gant.dispatch(Gant.groovy:415)at   gant.Gant.this $ 2 $ dispatch(Gant.groovy)at   gant.Gant.invokeMethod(Gant.groovy)at   gant.Gant.executeTargets(Gant.groovy:590)at   gant.Gant.executeTargets(Gant.groovy:589)at   com.intellij.rt.execution.application.AppMain.main(AppMain.java:120)   引起:org.springframework.beans.factory.BeanCreationException:   创建名称为' transactionManager'的bean时出错:无法解析   引用bean' sessionFactory'设置bean属性时   '的sessionFactory&#39 ;;嵌套异常是   org.springframework.beans.factory.BeanCreationException:错误   创建名为' sessionFactory'的bean:调用init方法   失败;嵌套异常是org.hibernate.MappingException:Type   [null]不是基本类型或域类,无法映射。   在[mapping]块中指定类型或使用基本类型   (字符串,整数等)... 24更多引起:   org.springframework.beans.factory.BeanCreationException:错误   创建名为' sessionFactory'的bean:调用init方法   失败;嵌套异常是org.hibernate.MappingException:Type   [null]不是基本类型或域类,无法映射。   在[mapping]块中指定类型或使用基本类型   (字符串,整数等)... 24更多引起:   org.hibernate.MappingException:Type [null]不是基本类型或   域类,无法映射。指定一个类型   [mapping]阻止或使用基本类型(String,Integer等)... 24   更

     

使用退出代码1完成处理

2 个答案:

答案 0 :(得分:2)

我删除了所有新的域类和对它们的引用,错误消失了。一旦我弄清楚问题是什么,我就会更新这个问题,希望与一个Spring Security类(User)的域名更改无关。

好的,问题是/是,我在我添加的其中一个域类的顶部有一个枚举声明。如果我在类声明下面移动枚举声明,那么一切都很好。我想这是一个休眠错误/问题?

答案 1 :(得分:0)

我猜你的某个域类中存在一个问题,你在其中一个字段的域类中使用了“def”或其他一些无效类型。