设置错误"用户类型"键入:org.jadira.usertype.dateandtime.joda.PersistentDateTime

时间:2014-07-13 03:06:32

标签: grails jodatime sessionfactory transactionmanager

我是Grails的新手(2.4.1)。我正在尝试使用joda时间(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 - 初始化时出错   application:使用name创建bean时出错   ' transactionManagerPostProcessor':bean的初始化失败;   嵌套异常是   org.springframework.beans.factory.BeanCreationException:错误   使用名称' transactionManager'创建bean:无法解析引用   to bean' sessionFactory'设置bean属性' sessionFactory&#39 ;;   嵌套异常是   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:无法解析引用   to bean' sessionFactory'设置bean属性' sessionFactory&#39 ;;   嵌套异常是   org.springframework.beans.factory.BeanCreationException:错误   创建名为' sessionFactory'的bean:调用init方法   失败;嵌套异常是java.lang.NoClassDefFoundError:   组织/休眠/发动机/ SessionImplementor

1 个答案:

答案 0 :(得分:4)

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

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