Spring 在JBOSS AS 7中部署EAR时,org.hibernate.ejb.Ejb3Configuration.configure上的java.lang.AbstractMethodError

Spring 在JBOSS AS 7中部署EAR时,org.hibernate.ejb.Ejb3Configuration.configure上的java.lang.AbstractMethodError,spring,hibernate,jboss7.x,Spring,Hibernate,Jboss7.x,在JBOSS AS7中部署EAR时出现以下错误: Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'entityManagerFactory' defined in class path resource [META-INF/springDAOContext.xml]: Invocation of init method failed; nested

在JBOSS AS7中部署EAR时出现以下错误:

Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'entityManagerFactory' defined in class path resource [META-INF/springDAOContext.xml]: Invocation of init method failed; nested exception is java.lang.AbstractMethodError
        at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1338)
        at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:473)
        at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory$1.run(AbstractAutowireCapableBeanFactory.java:409)
        at java.security.AccessController.doPrivileged(Native Method)
        at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:380)
        at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:264)
        at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:222)
        at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:261)
        at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:185)
        at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:164)
        at org.springframework.beans.factory.support.DefaultListableBeanFactory.getBeansOfType(DefaultListableBeanFactory.java:308)
        at org.springframework.beans.factory.BeanFactoryUtils.beansOfTypeIncludingAncestors(BeanFactoryUtils.java:270)
        at org.springframework.dao.support.PersistenceExceptionTranslationInterceptor.detectPersistenceExceptionTranslators(PersistenceExceptionTranslationInterceptor.java:122)
        at org.springframework.dao.support.PersistenceExceptionTranslationInterceptor.<init>(PersistenceExceptionTranslationInterceptor.java:78)
        at org.springframework.dao.annotation.PersistenceExceptionTranslationAdvisor.<init>(PersistenceExceptionTranslationAdvisor.java:70)
        at org.springframework.dao.annotation.PersistenceExceptionTranslationPostProcessor.setBeanFactory(PersistenceExceptionTranslationPostProcessor.java:97)
        at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1326)
        at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:473)
        ... 56 more
Caused by: java.lang.AbstractMethodError
        at org.hibernate.ejb.Ejb3Configuration.configure(Ejb3Configuration.java:632)
        at org.hibernate.ejb.HibernatePersistence.createContainerEntityManagerFactory(HibernatePersistence.java:72)
原因:org.springframework.beans.factory.BeanCreationException:创建在类路径资源[META-INF/springDAOContext.xml]中定义的名为“entityManagerFactory”的bean时出错:调用init方法失败;嵌套异常为java.lang.AbstractMethodError
位于org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1338)
位于org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:473)
位于org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory$1.run(AbstractAutowireCapableBeanFactory.java:409)
位于java.security.AccessController.doPrivileged(本机方法)
位于org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:380)
位于org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:264)
位于org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:222)
位于org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:261)
位于org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:185)
位于org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:164)
位于org.springframework.beans.factory.support.DefaultListableBeanFactory.getBeansOfType(DefaultListableBeanFactory.java:308)
位于org.springframework.beans.factory.BeanFactoryUtils.beansoftypeIncludingOriends(BeanFactoryUtils.java:270)
位于org.springframework.dao.support.PersistenceExceptionTranslationInterceptor.DetectPersistenceExceptionTranslationTranslator(PersistenceExceptionTranslationInterceptor.java:122)
位于org.springframework.dao.support.PersistenceExceptionTranslationInterceptor。(PersistenceExceptionTranslationInterceptor.java:78)
位于org.springframework.dao.annotation.PersistenceExceptionTranslationAdvisor。(PersistenceExceptionTranslationAdvisor.java:70)
位于org.springframework.dao.annotation.PersistenceExceptionTranslationPostProcessor.setBeanFactory(PersistenceExceptionTranslationPostProcessor.java:97)
位于org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1326)
位于org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:473)
... 56多
原因:java.lang.AbstractMethodError
位于org.hibernate.ejb.Ejb3Configuration.configure(Ejb3Configuration.java:632)
位于org.hibernate.ejb.HibernatePersistence.createContainerEntityManager工厂(HibernatePersistence.java:72)
我在JBoss7中添加了spring.jar(2.5.6)作为一个模块。在将spring添加为模块后,我得到了hibernate类的NoClassDef错误。为了解决这个问题,我在spring模块中添加了org.hiberernate模块的依赖项

添加依赖项后,我发现Abstractmethod错误。我认为这是由于lib文件夹中的hibernate jar和JBOSS模块之间的版本不匹配造成的

我能强迫JBOSS在我的lib目录中查找HibernateJAR而不是模块吗

我们将非常感谢您的帮助


谢谢。

此问题是由于JAR中的版本不匹配造成的


我通过将spring版本升级到3.2.2,将hibernate版本升级到4.0.1解决了这个问题

您是否在Spring模块的module.xml中添加了org.hibernate作为依赖项?是的,我添加了。我通过将spring版本升级到3.2.2,将hibernate版本升级到4.0.1解决了这个问题。谢谢