PDA

View Full Version : Cannot create inner bean HibernateJpaVendorAdapter


schrepfler
May 20th, 2007, 09:32 PM
Hi,
I'm trying to put together a web application based on struts 2, spring and jpa based on hibernate. I've created first a core/kernel library for the data access and I've done some basic tests on it to be sure that the spring configuration is ok. My problem is this, when I try to use the core, on container start I'm getting thes exception:


May 21, 2007 3:11:19 AM org.springframework.web.context.ContextLoader initWebApplicationContext
SEVERE: Context initialization failed
org.springframework.beans.factory.BeanCreationExce ption: Error creating bean with name 'entityManagerFactory' defined in class path resource [applicationContext.xml]: Cannot cr
eate inner bean 'org.springframework.orm.jpa.vendor.HibernateJpaVe ndorAdapter#1956391' while setting bean property 'jpaVendorAdapter'; nested exception is org.springframework.b
eans.factory.BeanCreationException: Error creating bean with name 'org.springframework.orm.jpa.vendor.HibernateJpaVe ndorAdapter#1956391' defined in class path resource [applica
tionContext.xml]: Initialization of bean failed; nested exception is java.lang.NoSuchMethodError: org.springframework.beans.factory.BeanCreationExce ption.getMostSpecificCause()
Ljava/lang/Throwable;
Caused by: org.springframework.beans.factory.BeanCreationExce ption: Error creating bean with name 'org.springframework.orm.jpa.vendor.HibernateJpaVe ndorAdapter#1956391' defined
in class path resource [applicationContext.xml]: Initialization of bean failed; nested exception is java.lang.NoSuchMethodError: org.springframework.beans.factory.BeanCreation
Exception.getMostSpecificCause()Ljava/lang/Throwable;
Caused by: java.lang.NoSuchMethodError: org.springframework.beans.factory.BeanCreationExce ption.getMostSpecificCause()Ljava/lang/Throwable;
at org.springframework.aop.framework.autoproxy.BeanFa ctoryAdvisorRetrievalHelper.findAdvisorBeans(BeanF actoryAdvisorRetrievalHelper.java:90)
at org.springframework.aop.framework.autoproxy.Abstra ctAdvisorAutoProxyCreator.findCandidateAdvisors(Ab stractAdvisorAutoProxyCreator.java:96)
at org.springframework.aop.framework.autoproxy.Abstra ctAdvisorAutoProxyCreator.findEligibleAdvisors(Abs tractAdvisorAutoProxyCreator.java:83)
at org.springframework.aop.framework.autoproxy.Abstra ctAdvisorAutoProxyCreator.getAdvicesAndAdvisorsFor Bean(AbstractAdvisorAutoProxyCreator.java:66)
at org.springframework.aop.framework.autoproxy.Abstra ctAutoProxyCreator.postProcessAfterInitialization( AbstractAutoProxyCreator.java:296)
at org.springframework.beans.factory.support.Abstract AutowireCapableBeanFactory.applyBeanPostProcessors AfterInitialization(AbstractAutowireCapableBeanFac tory.java:312)
at org.springframework.beans.factory.support.Abstract AutowireCapableBeanFactory.initializeBean(Abstract AutowireCapableBeanFactory.java:1033)
at org.springframework.beans.factory.support.Abstract AutowireCapableBeanFactory.createBean(AbstractAuto wireCapableBeanFactory.java:421)
at org.springframework.beans.factory.support.BeanDefi nitionValueResolver.resolveInnerBeanDefinition(Bea nDefinitionValueResolver.java:200)
at org.springframework.beans.factory.support.BeanDefi nitionValueResolver.resolveValueIfNecessary(BeanDe finitionValueResolver.java:111)
at org.springframework.beans.factory.support.Abstract AutowireCapableBeanFactory.applyPropertyValues(Abs tractAutowireCapableBeanFactory.java:950)
at org.springframework.beans.factory.support.Abstract AutowireCapableBeanFactory.populateBean(AbstractAu towireCapableBeanFactory.java:740)
at org.springframework.beans.factory.support.Abstract AutowireCapableBeanFactory.createBean(AbstractAuto wireCapableBeanFactory.java:417)
at org.springframework.beans.factory.support.Abstract BeanFactory$1.getObject(AbstractBeanFactory.java:2 45)
at org.springframework.beans.factory.support.DefaultS ingletonBeanRegistry.getSingleton(DefaultSingleton BeanRegistry.java:140)
at org.springframework.beans.factory.support.Abstract BeanFactory.getBean(AbstractBeanFactory.java:242)
at org.springframework.beans.factory.support.Abstract BeanFactory.getBean(AbstractBeanFactory.java:156)
at org.springframework.beans.factory.support.DefaultL istableBeanFactory.preInstantiateSingletons(Defaul tListableBeanFactory.java:270)
at org.springframework.context.support.AbstractApplic ationContext.refresh(AbstractApplicationContext.ja va:346)
at org.springframework.web.context.support.AbstractRe freshableWebApplicationContext.refresh(AbstractRef reshableWebApplicationContext.java:156)
at org.springframework.web.context.ContextLoader.crea teWebApplicationContext(ContextLoader.java:246)
at org.springframework.web.context.ContextLoader.init WebApplicationContext(ContextLoader.java:184)
at org.springframework.web.context.ContextLoaderListe ner.contextInitialized(ContextLoaderListener.java: 49)
at org.mortbay.jetty.handler.ContextHandler.startCont ext(ContextHandler.java:450)
at org.mortbay.jetty.webapp.WebAppContext.startContex t(WebAppContext.java:1129)
at org.mortbay.jetty.handler.ContextHandler.doStart(C ontextHandler.java:420)
at org.mortbay.jetty.webapp.WebAppContext.doStart(Web AppContext.java:457)
at org.mortbay.component.AbstractLifeCycle.start(Abst ractLifeCycle.java:38)
at org.mortbay.jetty.handler.HandlerCollection.doStar t(HandlerCollection.java:156)
at org.mortbay.jetty.handler.ContextHandlerCollection .doStart(ContextHandlerCollection.java:120)
at org.mortbay.component.AbstractLifeCycle.start(Abst ractLifeCycle.java:38)
at org.mortbay.jetty.handler.HandlerCollection.doStar t(HandlerCollection.java:156)
at org.mortbay.component.AbstractLifeCycle.start(Abst ractLifeCycle.java:38)
at org.mortbay.jetty.handler.HandlerWrapper.doStart(H andlerWrapper.java:119)
at org.mortbay.jetty.Server.doStart(Server.java:210)
at org.mortbay.component.AbstractLifeCycle.start(Abst ractLifeCycle.java:38)
at org.mortbay.jetty.plugin.Jetty6PluginServer.start( Jetty6PluginServer.java:134)
at org.mortbay.jetty.plugin.AbstractJettyMojo.startJe tty(AbstractJettyMojo.java:327)
at org.mortbay.jetty.plugin.AbstractJettyMojo.execute (AbstractJettyMojo.java:272)
at org.mortbay.jetty.plugin.AbstractJettyRunMojo.exec ute(AbstractJettyRunMojo.java:177)
at org.mortbay.jetty.plugin.Jetty6RunMojo.execute(Jet ty6RunMojo.java:183)
at org.apache.maven.plugin.DefaultPluginManager.execu teMojo(DefaultPluginManager.java:420)
at org.apache.maven.lifecycle.DefaultLifecycleExecuto r.executeGoals(DefaultLifecycleExecutor.java:539)
at org.apache.maven.lifecycle.DefaultLifecycleExecuto r.executeStandaloneGoal(DefaultLifecycleExecutor.j ava:493)
at org.apache.maven.lifecycle.DefaultLifecycleExecuto r.executeGoal(DefaultLifecycleExecutor.java:463)
at org.apache.maven.lifecycle.DefaultLifecycleExecuto r.executeGoalAndHandleFailures(DefaultLifecycleExe cutor.java:311)
at org.apache.maven.lifecycle.DefaultLifecycleExecuto r.executeTaskSegments(DefaultLifecycleExecutor.jav a:278)
at org.apache.maven.lifecycle.DefaultLifecycleExecuto r.execute(DefaultLifecycleExecutor.java:143)
at org.apache.maven.DefaultMaven.doExecute(DefaultMav en.java:330)
at org.apache.maven.DefaultMaven.execute(DefaultMaven .java:123)
at org.apache.maven.cli.MavenCli.main(MavenCli.java:2 72)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Nativ e Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Native MethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(De legatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at org.codehaus.classworlds.Launcher.launchEnhanced(L auncher.java:315)
at org.codehaus.classworlds.Launcher.launch(Launcher. java:255)
at org.codehaus.classworlds.Launcher.mainWithExitCode (Launcher.java:430)
at org.codehaus.classworlds.Launcher.main(Launcher.ja va:375)
2007-05-21 03:11:19.905::WARN: failed ContextHandler@157bf4c{/jspart-struts2-ui,file:/C:/Documents%20and%20Settings/Srepfler%20Srgjan/Documenti/jspart/project/jspart/jspart-st
ruts2-ui/src/main/webapp/}
2007-05-21 03:11:19.905::WARN: failed ContextHandlerCollection@1d056de
2007-05-21 03:11:19.905::WARN: failed HandlerCollection@f70ee1
2007-05-21 03:11:20.139::INFO: Started SelectChannelConnector @ 0.0.0.0:8080
2007-05-21 03:11:20.139::WARN: failed Server@12beeec
[INFO] Jetty server exiting.
[INFO] ------------------------------------------------------------------------
[ERROR] BUILD ERROR
[INFO] ------------------------------------------------------------------------
[INFO] Failure

Embedded error: Error creating bean with name 'entityManagerFactory' defined in class path resource [applicationContext.xml]: Cannot create inner bean 'org.springframework.orm.
jpa.vendor.HibernateJpaVendorAdapter#1956391' while setting bean property 'jpaVendorAdapter'; nested exception is org.springframework.beans.factory.BeanCreationExce ption: Error
creating bean with name 'org.springframework.orm.jpa.vendor.HibernateJpaVe ndorAdapter#1956391' defined in class path resource [applicationContext.xml]: Initialization of bean
failed; nested exception is java.lang.NoSuchMethodError: org.springframework.beans.factory.BeanCreationExce ption.getMostSpecificCause()Ljava/lang/Throwable;

schrepfler
May 20th, 2007, 09:33 PM
This is the web spring:


<beans>
<import resource="classpath:applicationContext.xml"/>
<!-- Example of SAF2 action instantiated by Spring -->
<bean id="helloWorldAction" class="net.sigmalab.jspart.HelloWorldAction" singleton="false" />
</beans>


This is the core spring:

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:aop="http://www.springframework.org/schema/aop"
xmlns:tx="http://www.springframework.org/schema/tx"
xsi:schemaLocation="
http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.0.xsd
http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-2.0.xsd
http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-2.0.xsd">

<bean id="entityManagerFactory"
class="org.springframework.orm.jpa.LocalEntityManagerFact oryBean">
<property name="persistenceUnitName" value="jspart" />
<property name="jpaVendorAdapter">
<bean
class="org.springframework.orm.jpa.vendor.HibernateJpaVen dorAdapter">
<property name="database" value="POSTGRESQL" />
<property name="generateDdl" value="false" />
<property name="showSql" value="true" />
</bean>
</property>
</bean>

<tx:annotation-driven transaction-manager="transactionManager"/>

<bean id="transactionManager"
class="org.springframework.orm.jpa.JpaTransactionManager">
<property name="entityManagerFactory"
ref="entityManagerFactory" />
</bean>

<bean id="jpaArtifactDAO"
class="net.sigmalab.jspart.dao.jpa.ArtifactDAO">
<property name="entityManagerFactory"
ref="entityManagerFactory" />
</bean>
....
</beans>

schrepfler
May 28th, 2007, 01:28 PM
In the end I've resolved the problems by started from scratch (using the struts2 archetype) and adding spring to it.