【问题标题】:Error on setting "user-type" type: org.jadira.usertype.dateandtime.joda.PersistentDateTime设置“用户类型”类型时出错:org.jadira.usertype.dateandtime.joda.PersistentDateTime
【发布时间】:2014-07-13 03:06:32
【问题描述】:

我是 Grails (2.4.1) 的新手。我正在尝试使用 joda time (1.5)。当我将下面的脚本放到我的 Config.groovy 中时,会发生错误。

grails.gorm.default.mapping = {
    "user-type" type: org.jadira.usertype.dateandtime.joda.PersistentDateTime, class: org.joda.time.DateTime
    "user-type" type: org.jadira.usertype.dateandtime.joda.PersistentLocalDate, class: org.joda.time.LocalDate
    // … define as many other user type mappings as you need
}

错误:错误 | 2014-07-12 23:45:31,632 [localhost-startStop-1] 错误 context.GrailsContextLoaderListener - 初始化错误 应用程序:使用名称创建 bean 时出错 'transactionManagerPostProcessor': bean 初始化失败; 嵌套异常是 org.springframework.beans.factory.BeanCreationException:错误 创建名为“transactionManager”的bean:无法解析引用 在设置 bean 属性 'sessionFactory' 时 bean 'sessionFactory'; 嵌套异常是 org.springframework.beans.factory.BeanCreationException:错误 创建名为“sessionFactory”的bean:调用init方法 失败的;嵌套异常是 java.lang.NoClassDefFoundError: org/hibernate/engine/SessionImplementor 消息:创建 bean 时出错 名称为“transactionManagerPostProcessor”:bean 的初始化 失败的;嵌套异常是 org.springframework.beans.factory.BeanCreationException:错误 创建名为“transactionManager”的bean:无法解析引用 在设置 bean 属性 'sessionFactory' 时 bean 'sessionFactory'; 嵌套异常是 org.springframework.beans.factory.BeanCreationException:错误 创建名为“sessionFactory”的bean:调用init方法 失败的;嵌套异常是 java.lang.NoClassDefFoundError: org/hibernate/engine/SessionImplementor

等等

【问题讨论】:

  • 第 4 行出现错误...
  • 如果您将项目更改为使用 Hibernate 3 而不是 4 是否有效?
  • 您好 Joshua,感谢您的回复!我更改了休眠版本,但仍然发生错误。请看一下: // 运行时需要的插件,但编译运行时不需要的插件 ":hibernate:3.6.10.16" // ":hibernate4:4.3.5.4" 错误:等等...等等...(与上一个相同) post) 和:由 HibernateException 引起:无法实例化 RegionFactory [org.hibernate.cache.ehcache.EhCacheRegionFactory]...等...非常感谢!

标签: grails jodatime sessionfactory transactionmanager


【解决方案1】:

我通过升级插件使用的 Jadira Usertype 库依赖项修复了相同的错误。

Joda Time 插件推荐“org.jadira.usertype:usertype.jodatime:1.9”,它仅适用于 Hibernate 3。尝试切换到“org.jadira.usertype:usertype.core:3.2.0.GA”时使用休眠 4。

【讨论】:

  • 对于 Grails 2.4.3 和 hibernate4 的我来说, org.jadira.usertype:usertype.jodatime:2.0 的新 2.0 版本可以正常工作。
  • Grails 2.5.4 与插件、运行时 ":hibernate4:4.3.10" 和依赖项,编译 "org.jadira.usertype:usertype.core:4.0.0.GA",适用于我。
猜你喜欢
  • 1970-01-01
  • 2021-05-19
  • 2022-10-18
  • 1970-01-01
  • 2011-03-12
  • 1970-01-01
  • 2012-06-29
  • 2016-01-11
  • 1970-01-01
相关资源
最近更新 更多