我做了一些看似无害的更改(添加了一些域类,添加了插件购物车),现在显然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 _GrailsSettings_groovy $ _run_closure10.doCall(_GrailsSettings_groovy:280) at _GrailsSettings_groovy $ _run_closure10.call(_GrailsSettings_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完成处理
答案 0 :(得分:2)
我删除了所有新的域类和对它们的引用,错误消失了。一旦我弄清楚问题是什么,我就会更新这个问题,希望与一个Spring Security类(User)的域名更改无关。
好的,问题是/是,我在我添加的其中一个域类的顶部有一个枚举声明。如果我在类声明下面移动枚举声明,那么一切都很好。我想这是一个休眠错误/问题?
答案 1 :(得分:0)
我猜你的某个域类中存在一个问题,你在其中一个字段的域类中使用了“def”或其他一些无效类型。