使用名称'transactionManager:BeanCreationException创建bean时出错 [英] Error creating bean with name 'transactionManager : BeanCreationException

查看:156
本文介绍了使用名称'transactionManager:BeanCreationException创建bean时出错的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

请注意我已经尝试了以前的帖子,但他们不适合我。



我的Spring有问题, Hibernate Configuration。



我认为原因是因为它无法连接到我的数据库,但我的属性文件中的凭据都是正确的。
MySQL版本是5.5.44,Spring版本是4.0.2,Hibernate版本是4.2.7.Final

这是我的tomcat的错误。 / p>

  org.springframework.beans.factory.BeanCreationException:在ServletContext资源中定义名称为'transactionManager'的Bean时创建错误[/ WEB-INF /spring/root-context.xml]:设置bean属性'sessionFactory'时无法解析对bean'mySessionFactory'的引用;嵌套异常是org.springframework.beans.factory.BeanCreationException:在ServletContext资源[/WEB-INF/spring/root-context.xml]中定义名称为'mySessionFactory'的bean时创建错误:调用init方法失败;嵌套异常是java.lang.NoSuchMethodError:com.mchange.v2.async.ThreadPoolAsynchronousRunner。< init>(IZLjava / util / Timer; Ljava / lang / String;)V 
位于org.springframework.beans.factory .BeanDefinitionValueResolver.resolveReference(BeanDefinitionValueResolver.java:328)〜[spring-beans-4.0.2.RELEASE.jar:na]
at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveValueIfNecessary(BeanDefinitionValueResolver。 java:107)〜[spring-beans-4.0.2.RELEASE.jar:na]
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.applyPropertyValues(AbstractAutowireCapableBeanFactory.java:1456)〜[spring-beans -4.0.2.RELEASE.jar:na]
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1197)〜[spring-beans-4.0.2.RELEASE.jar: na]
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory .java:537)〜[spring-beans-4.0.2.RELEASE.jar:不] beans-4.0.2.RELEASE.jar:na]
15-Oct-2015 13:22:45.620 SEVERE [RMI TCP Connection(2)-127.0.0.1] org.apache.catalina.core.StandardContext.startInternal一个或多个听众未能开始。在org.springframework.beans.factory.support.AbstractBeanFactory $ 1.getObject(AbstractBeanFactory.java:304)〜[spring-beans-4.0.2.RELEASE.jar]中的相应容器日志文件
中可以找到完整的详细信息:na]
at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:228)〜[spring-beans-4.0.2.RELEASE.jar:na]
at org .springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:300)〜[弹簧豆-4.0.2.RELEASE.jar:NA]在org.springframework.beans.factory.support
。 AbstractBeanFactory.getBean(AbstractBeanFactory.java:195)〜[spring-beans-4.0.2.RELEASE.jar:na]
at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:700 )〜[spring-beans-4.0.2.RELEASE.jar:na]
at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:760)〜[spring-c ontext-4.0.2.RELEASE.jar:na]
at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:482)〜[spring-context-4.0.2.RELEASE.jar:na ]在org.springframework.web.context.ContextLoader.configureAndRefreshWebApplicationContext(ContextLoader.java:403)
〜[弹簧网络4.0.2.RELEASE.jar:在4.0.2.RELEASE]
的有机.springframework.web.context.ContextLoader.initWebApplicationContext(ContextLoader.java:306)〜[弹簧网络4.0.2.RELEASE.jar:4.0.2.RELEASE]在org.springframework.web.context
。 ContextLoaderListener.contextInitialized(ContextLoaderListener.java:106)[弹簧网络4.0.2.RELEASE.jar:4.0.2.RELEASE]在org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java
: 4729)[catalina.jar:8.0.24]
at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5167)[catalina.jar:8.0.24]
at org。 apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)[catalina.jar:8.0.24]
at org.apache.c atalina.core.ContainerBase.addChildInternal(ContainerBase.java:725)[catalina.jar:8.0.24]
at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:701)[catalina.jar :8.0.24]
at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:717)[catalina.jar:8.0.24]
15-Oct-2015 13:22: 45.625 SEVERE [RMI TCP连接(2)-127.0.0.1] org.apache.catalina.core.StandardContext.startInternal由于之前的错误,启动失败[/ service]
在org.apache.catalina.startup.HostConfig .manageApp(HostConfig.java:1648)[catalina.jar:8.0.24]
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)〜[na:1.7.0_80]
at sun.reflect .NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)〜[na:1.7.0_80]
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)〜[na:1.7.0_80]
在java.lang.reflect.Method.invoke(Method.java:606)〜[na:1.7.0_80]
at org.apache.tomcat.util.modeler.BaseModelMBean.invok E(BaseModelMBean.java:300)[Tomcat的coyote.jar:8.0.24]
。在com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.invoke(DefaultMBeanServerInterceptor.java:819)[NA:1.7.0_80]
at com.sun.jmx.mbeanserver.JmxMBeanServer.invoke(JmxMBeanServer.java:801)[na:1.7.0_80]
at org.apache.catalina.mbeans.MBeanFactory.createStandardContext(MBeanFactory.java: 463)[catalina.jar:8.0.24]
at org.apache.catalina.mbeans.MBeanFactory.createStandardContext(MBeanFactory.java:413)[catalina.jar:8.0.24]
at sun。 reflect.NativeMethodAccessorImpl.invoke0(Native Method)〜[na:1.7.0_80]
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)〜[na:1.7.0_80]
at sun .reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)〜[na:1.7.0_80]
at java.lang.reflect.Method.invoke(Method.java:606)〜[na:1.7.0_80]
at org.apache.tomcat.util.modeler.BaseModelMBean.invoke(BaseModelMBean.java:300)[tomcat-coyote.jar:8.0.24]
at com.sun.jmx.in (默认MBeanServerInterceptor.java:819)[na:1.7.0_80]
$ b at javax.management.remote.rmi.RMIConnectionImpl.doOperation(RMIConnectionImpl.java:1487)[na:1.7.0_80]
at javax.management.remote.rmi.RMIConnectionImpl.access $ 300(RMIConnectionImpl.java :97)[na:1.7.0_80]
at javax.management.remote.rmi.RMIConnectionImpl $ PrivilegedOperation.run(RMIConnectionImpl.java:1328)[na:1.7.0_80]
at javax.management .remote.rmi.RMIConnectionImpl.doPrivilegedOperation(RMIConnectionImpl.java:1420)[na:1.7.0_80]
at javax.management.remote.rmi.RMIConnectionImpl.invoke(RMIConnectionImpl.java:848)[na:1.7。 0_80]
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)〜[na:1.7.0_80]
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)〜[na:1.7 .0_80]
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Delegati ngMethodAccessorImpl.java:43)〜[na:1.7.0_80]
at java.lang.reflect.Method.invoke(Method.java:606)〜[na:1.7.0_80]
at sun。 rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:322)[na:1.7.0_80]
at sun.rmi.transport.Transport $ 2.run(Transport.java:202)[na:1.7.0_80]
at sun.rmi.transport.Transport $ 2.run(Transport.java:199)[na:1.7.0_80]
at java.security.AccessController.doPrivileged(Native Method)[na:1.7。 0_80]
at sun.rmi.transport.Transport.serviceCall(Transport.java:198)[na:1.7.0_80]
at sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java :567)[na:1.7.0_80]
at sun.rmi.transport.tcp.TCPTransport $ ConnectionHandler.run0(TCPTransport.java:828)[na:1.7.0_80]
at sun.rmi .transport.tcp.TCPTransport $ $ ConnectionHandler.access 400(TCPTransport.java:619)[NA:1.7.0_80]在sun.rmi.transport.tcp.TCPTransport $ $ ConnectionHandler 1.run
(TCPTransport.java:684 )[na:1.7.0_80]
at sun.rmi.transport.tcp.TCPTransport $ ConnectionHandler $ 1.run( TCPTransport.java:681)[na:1.7.0_80]
at java.security.AccessController.doPrivileged(Native Method)[na:1.7.0_80]
at sun.rmi.transport.tcp.TCPTransport $ ConnectionHandler.run(TCPTransport.java:681)[na:1.7.0_80]
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)[na:1.7.0_80]
$ java.util.concurrent.ThreadPoolExecutor $ Worker.run(ThreadPoolExecutor.java:615)[na:1.7.0_80]
at java.lang.Thread.run(Thread.java:745)[na:1.7。 0_80]
导致:org.springframework.beans.factory.BeanCreationException:在ServletContext资源[/WEB-INF/spring/root-context.xml]中定义创建名为'mySessionFactory'的Bean时出错:调用init方法失败;嵌套异常是java.lang.NoSuchMethodError:com.mchange.v2.async.ThreadPoolAsynchronousRunner。< init>(IZLjava / util / Timer; Ljava / lang / String;)V
位于org.springframework.beans.factory .AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory。)。 java:539)〜[spring-beans-4.0.2.RELEASE.jar:不] -4.0.2.RELEASE.jar:na]
在org.springframework.beans.factory.support.AbstractBeanFactory $ 1.getObject(AbstractBeanFactory.java:304)〜[spring-beans-4.0.2.RELEASE.jar :na]
at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:228)〜[spring-beans-4.0.2.RELEAS E.jar:na]
at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:300)〜[spring-beans-4.0.2.RELEASE.jar:na]
at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:195)〜[spring-beans-4.0.2.RELEASE.jar:na]
at org.springframework.beans.factory .support.BeanDefinitionValueResolver.resolveReference(BeanDefinitionValueResolver.java:320)〜[spring-beans-4.0.2.RELEASE.jar:na]
...省略62个常用框架
由...引发:java.lang .NoSuchMethodError:com.mchange.v2.async.ThreadPoolAsynchronousRunner。< init>(IZLjava / util / Timer; Ljava / lang / String;)V
at com.mchange.v2.c3p0.impl.C3P0PooledConnectionPoolManager.createTaskRunner (C3P0PooledConnectionPoolManager.java:145)〜[c3p0-0.9.2.1.jar:na]
at com.mchange.v2.c3p0.impl.C3P0PooledConnectionPoolManager.poolsInit(C3P0PooledConnectionPoolManager.java:174)〜[c3p0-0.9。 2.1.jar:na]
at com.mchange.v2.c3p0.impl.C3P0PooledConnectionPoolMa < init>(C3P0PooledConnectionPoolManager.java:295)〜[c3p0-0.9.2.1.jar:na]
at com.mchange.v2.c3p0.impl.AbstractPoolBackedDataSource.getPoolManager(AbstractPoolBackedDataSource.java:520) 〜[c3p0-0.9.2.1.jar:na]
at com.mchange.v2.c3p0.impl.AbstractPoolBackedDataSource.getConnection(AbstractPoolBackedDataSource.java:140)〜[c3p0-0.9.2.1.jar:na]
at org.hibernate.service.jdbc.connections.internal.DatasourceConnectionProviderImpl.getConnection(DatasourceConnectionProviderImpl.java:141)〜[hibernate-core-4.2.7.Final.jar:4.2.7.Final]
at org.hibernate.engine.jdbc.internal.JdbcServicesImpl $ ConnectionProviderJdbcConnectionAccess.obtainConnection(JdbcServicesImpl.java:242)〜[hibernate-core-4.2.7.Final.jar:4.2.7.Final]
at org。 hibernate.engine.jdbc.internal.JdbcServicesImpl.configure(JdbcServicesImpl.java:117)〜[hibernate-core-4.2.7.Final.jar:4.2.7.Final]
at org.hibernate.service.internal .StandardServiceRegistryImpl.configureService(StandardServiceRegistryImpl.jav a:76)〜[hibernate-core-4.2.7.Final.jar:4.2.7.Final]
at org.hibernate.service.internal.AbstractServiceRegistryImpl.initializeService(AbstractServiceRegistryImpl.java:160)〜[hibernate -core-4.2.7.Final.jar:4.2.7.Final]
at org.hibernate.service.internal.AbstractServiceRegistryImpl.getService(AbstractServiceRegistryImpl.java:132)〜[hibernate-core-4.2.7。 Final.jar:4.2.7.Final]
在org.hibernate.cfg.Configuration.buildTypeRegistrations(Configuration.java:1822)〜[hibernate-core-4.2.7.Final.jar:na]
在org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:1780)〜[hibernate-core-4.2.7.Final.jar:na]
at org.hibernate.cfg.Configuration.buildSessionFactory(Configuration .java:1865)〜[hibernate-core-4.2.7.Final.jar:na]
at org.springframework.orm.hibernate4.LocalSessionFactoryBuilder.buildSessionFactory(LocalSessionFactoryBuilder.java:343)〜[spring-orm- 4.0.2.RELEASE.jar:4.0.2.RELEASE]
在org.springframework.orm.hibernate4.LocalSessionFactoryBean.buildSes sionFactory(LocalSessionFactoryBean.java:431)〜[spring-orm-4.0.2.RELEASE.jar:4.0.2.RELEASE]
at org.springframework.orm.hibernate4.LocalSessionFactoryBean.afterPropertiesSet(LocalSessionFactoryBean.java:416 )〜[spring-orm-4.0.2.RELEASE.jar:4.0.2.RELEASE]
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1612)〜[spring- beans-4.0.2.RELEASE.jar:na]
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1549)〜[spring-beans-4.0.2.RELEASE.jar :na]
... 69个常用框架省略

这是我的根环境



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

< context:property-placeholder location =classpath:props.properties/>
< tx:注解驱动的事务管理器=transactionManager/>

< bean id =transactionManager
class =org.springframework.orm.hibernate4.HibernateTransactionManager>
< property name =sessionFactoryref =mySessionFactory/>
< / bean>

< bean id =mySessionFactory
class =org.springframework.orm.hibernate4.LocalSessionFactoryBean>
< property name =dataSourceref =myDataSource/>
< property name =hibernateProperties>
<道具>
< prop key =hibernate.dialect> $ {locationdb.hibernate.dialect}< / prop>
< prop key =hibernate.show_sql> true< / prop>
< prop key =hibernate.hbm2ddl.auto> update< / prop>
< prop key =hibernate.current_session_context_class>
org.springframework.orm.hibernate4.SpringSessionContext
< / prop>
< /道具>
< / property>
< property name =packagesToScan>
< list>
<值> com.mypackage< /值>
< / list>
< / property>
< / bean>

<! - Location DB数据源 - >
<! - 在数据库类型之间切换时,请注意:
*更改下面的driverClass和driverClassName。
*根据需要更新props.properties(请参阅:端点和Hibernate方言)
- >

< bean id =myDataSourceclass =com.mchange.v2.c3p0.ComboPooledDataSource
destroy-method =close>
< property name =driverClassvalue =com.mysql.jdbc.Driver/>
< property name =jdbcUrlvalue =$ {locationdb.endpoint}/>
< property name =uservalue =$ {locationdb.username}/>
< property name =passwordvalue =$ {locationdb.password}/>

< property name =acquireIncrementvalue =$ {locationdb.c3p0.acquireIncrement}/>
< property name =minPoolSizevalue =$ {locationdb.c3p0.minPoolSize}/>
< property name =maxPoolSizevalue =$ {locationdb.c3p0.maxPoolSize}/>
< property name =maxIdleTimevalue =$ {locationdb.c3p0.maxIdleTime}/>
< / bean>


<! - - 位置DB MySQL数据源 - >
< bean id =dataSourceclass =org.springframework.jdbc.datasource.DriverManagerDataSource>
< property name =driverClassNamevalue =com.mysql.jdbc.Driver/>
< property name =urlvalue =$ {locationdb.endpoint}/>
< property name =usernamevalue =$ {locationdb.username}/>
< property name =passwordvalue =$ {locationdb.password}/>
< / bean>


class =org.springframework.data.redis.connection.jedis.JedisConnectionFactory
p:hostName =$ {
p:port =$ {jedis_endpoint_port}
p:timeout =$ {jedis_timeout}
p:usePool =true
p:poolConfig-ref = jedisPoolConfig/>

< bean id =serializerclass =org.springframework.data.redis.serializer.StringRedisSerializer/>

class =org.springframework.data.redis.core.RedisTemplate
p:connectionFactory-ref =jedisConnFactory
P:defaultSerializer-REF = 串行/>

p:maxTotal =150
p:minIdle =5$ b $沸点:了maxidle = 15/>

<! - 工作经理 - >
< bean id =jobManagerclass =com.mypackage.restws.controllers.jobs.JobManager/>


< bean id =restTemplateclass =org.springframework.web.client.RestTemplate/>





这是我的道具。属性

  locationdb.hibernate.dialect = org.hibernate.dialect.MySQLDialect 

locationdb.endpoint = jdbc:mysql:// localhost / locationdb
locationdb.username = root
locationdb.password = root

locationdb.c3p0.acquireIncrement = 1
locationdb.c3p0。 minPoolSize = 1
locationdb.c3p0.maxPoolSize = 10
locationdb.c3p0.maxIdleTime = 200

optout.endpoint = https:// localhost:8443 /

我的好友成功完成了他们的项目设置,但我的错误是。有什么我应该考虑在配置?

解决方案

这似乎是版本库不兼容。在服务器启动的JVM参数中使用 - verbose:class来找到一个非常好的(但是详细的)方法。这会生成很多日志,所以我更愿意将它输出到服务器启动命令行中的文件。在仔细搜索相关类时,日志还会打印出jar文件,并且它是类加载器选择此类的位置。这可能会提示兼容性问题。


Please note I already tried the previous posts, but their not working for me.

I am having a problem with my Spring and Hibernate Configuration.

I think the reason is because it could not connect to my database, but I have the credentials in my properties file are all correct. MySQL version is 5.5.44, Spring version is 4.0.2 and Hibernate version is 4.2.7.Final

This is the error of my tomcat.

org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'transactionManager' defined in ServletContext resource [/WEB-INF/spring/root-context.xml]: Cannot resolve reference to bean 'mySessionFactory' while setting bean property 'sessionFactory'; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'mySessionFactory' defined in ServletContext resource [/WEB-INF/spring/root-context.xml]: Invocation of init method failed; nested exception is java.lang.NoSuchMethodError: com.mchange.v2.async.ThreadPoolAsynchronousRunner.<init>(IZLjava/util/Timer;Ljava/lang/String;)V
at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveReference(BeanDefinitionValueResolver.java:328) ~[spring-beans-4.0.2.RELEASE.jar:na]
at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveValueIfNecessary(BeanDefinitionValueResolver.java:107) ~[spring-beans-4.0.2.RELEASE.jar:na]
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.applyPropertyValues(AbstractAutowireCapableBeanFactory.java:1456) ~[spring-beans-4.0.2.RELEASE.jar:na]
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1197) ~[spring-beans-4.0.2.RELEASE.jar:na]
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:537) ~[spring-beans-4.0.2.RELEASE.jar:na]
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:475) ~[spring-beans-4.0.2.RELEASE.jar:na]
15-Oct-2015 13:22:45.620 SEVERE [RMI TCP Connection(2)-127.0.0.1] org.apache.catalina.core.StandardContext.startInternal One or more listeners failed to start. Full details will be found in the appropriate container log file
at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:304) ~[spring-beans-4.0.2.RELEASE.jar:na]
at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:228) ~[spring-beans-4.0.2.RELEASE.jar:na]
at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:300) ~[spring-beans-4.0.2.RELEASE.jar:na]
at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:195) ~[spring-beans-4.0.2.RELEASE.jar:na]
at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:700) ~[spring-beans-4.0.2.RELEASE.jar:na]
at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:760) ~[spring-context-4.0.2.RELEASE.jar:na]
at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:482) ~[spring-context-4.0.2.RELEASE.jar:na]
at org.springframework.web.context.ContextLoader.configureAndRefreshWebApplicationContext(ContextLoader.java:403) ~[spring-web-4.0.2.RELEASE.jar:4.0.2.RELEASE]
at org.springframework.web.context.ContextLoader.initWebApplicationContext(ContextLoader.java:306) ~[spring-web-4.0.2.RELEASE.jar:4.0.2.RELEASE]
at org.springframework.web.context.ContextLoaderListener.contextInitialized(ContextLoaderListener.java:106) [spring-web-4.0.2.RELEASE.jar:4.0.2.RELEASE]
at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:4729) [catalina.jar:8.0.24]
at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5167) [catalina.jar:8.0.24]
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150) [catalina.jar:8.0.24]
at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:725) [catalina.jar:8.0.24]
at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:701) [catalina.jar:8.0.24]
at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:717) [catalina.jar:8.0.24]
15-Oct-2015 13:22:45.625 SEVERE [RMI TCP Connection(2)-127.0.0.1] org.apache.catalina.core.StandardContext.startInternal Context [/service] startup failed due to previous errors
at org.apache.catalina.startup.HostConfig.manageApp(HostConfig.java:1648) [catalina.jar:8.0.24]
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[na:1.7.0_80]
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) ~[na:1.7.0_80]
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[na:1.7.0_80]
at java.lang.reflect.Method.invoke(Method.java:606) ~[na:1.7.0_80]
at org.apache.tomcat.util.modeler.BaseModelMBean.invoke(BaseModelMBean.java:300) [tomcat-coyote.jar:8.0.24]
at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.invoke(DefaultMBeanServerInterceptor.java:819) [na:1.7.0_80]
at com.sun.jmx.mbeanserver.JmxMBeanServer.invoke(JmxMBeanServer.java:801) [na:1.7.0_80]
at org.apache.catalina.mbeans.MBeanFactory.createStandardContext(MBeanFactory.java:463) [catalina.jar:8.0.24]
at org.apache.catalina.mbeans.MBeanFactory.createStandardContext(MBeanFactory.java:413) [catalina.jar:8.0.24]
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[na:1.7.0_80]
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) ~[na:1.7.0_80]
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[na:1.7.0_80]
at java.lang.reflect.Method.invoke(Method.java:606) ~[na:1.7.0_80]
at org.apache.tomcat.util.modeler.BaseModelMBean.invoke(BaseModelMBean.java:300) [tomcat-coyote.jar:8.0.24]
at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.invoke(DefaultMBeanServerInterceptor.java:819) [na:1.7.0_80]
at com.sun.jmx.mbeanserver.JmxMBeanServer.invoke(JmxMBeanServer.java:801) [na:1.7.0_80]
at javax.management.remote.rmi.RMIConnectionImpl.doOperation(RMIConnectionImpl.java:1487) [na:1.7.0_80]
at javax.management.remote.rmi.RMIConnectionImpl.access$300(RMIConnectionImpl.java:97) [na:1.7.0_80]
at javax.management.remote.rmi.RMIConnectionImpl$PrivilegedOperation.run(RMIConnectionImpl.java:1328) [na:1.7.0_80]
at javax.management.remote.rmi.RMIConnectionImpl.doPrivilegedOperation(RMIConnectionImpl.java:1420) [na:1.7.0_80]
at javax.management.remote.rmi.RMIConnectionImpl.invoke(RMIConnectionImpl.java:848) [na:1.7.0_80]
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[na:1.7.0_80]
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) ~[na:1.7.0_80]
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[na:1.7.0_80]
at java.lang.reflect.Method.invoke(Method.java:606) ~[na:1.7.0_80]
at sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:322) [na:1.7.0_80]
at sun.rmi.transport.Transport$2.run(Transport.java:202) [na:1.7.0_80]
at sun.rmi.transport.Transport$2.run(Transport.java:199) [na:1.7.0_80]
at java.security.AccessController.doPrivileged(Native Method) [na:1.7.0_80]
at sun.rmi.transport.Transport.serviceCall(Transport.java:198) [na:1.7.0_80]
at sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:567) [na:1.7.0_80]
at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run0(TCPTransport.java:828) [na:1.7.0_80]
at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.access$400(TCPTransport.java:619) [na:1.7.0_80]
at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler$1.run(TCPTransport.java:684) [na:1.7.0_80]
at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler$1.run(TCPTransport.java:681) [na:1.7.0_80]
at java.security.AccessController.doPrivileged(Native Method) [na:1.7.0_80]
at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:681) [na:1.7.0_80]
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) [na:1.7.0_80]
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) [na:1.7.0_80]
at java.lang.Thread.run(Thread.java:745) [na:1.7.0_80]
Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'mySessionFactory' defined in ServletContext resource [/WEB-INF/spring/root-context.xml]: Invocation of init method failed; nested exception is java.lang.NoSuchMethodError: com.mchange.v2.async.ThreadPoolAsynchronousRunner.<init>(IZLjava/util/Timer;Ljava/lang/String;)V
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1553) ~[spring-beans-4.0.2.RELEASE.jar:na]
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:539) ~[spring-beans-4.0.2.RELEASE.jar:na]
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:475) ~[spring-beans-4.0.2.RELEASE.jar:na]
at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:304) ~[spring-beans-4.0.2.RELEASE.jar:na]
at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:228) ~[spring-beans-4.0.2.RELEASE.jar:na]
at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:300) ~[spring-beans-4.0.2.RELEASE.jar:na]
at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:195) ~[spring-beans-4.0.2.RELEASE.jar:na]
at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveReference(BeanDefinitionValueResolver.java:320) ~[spring-beans-4.0.2.RELEASE.jar:na]
... 62 common frames omitted
Caused by: java.lang.NoSuchMethodError: com.mchange.v2.async.ThreadPoolAsynchronousRunner.<init>(IZLjava/util/Timer;Ljava/lang/String;)V
at com.mchange.v2.c3p0.impl.C3P0PooledConnectionPoolManager.createTaskRunner(C3P0PooledConnectionPoolManager.java:145) ~[c3p0-0.9.2.1.jar:na]
at com.mchange.v2.c3p0.impl.C3P0PooledConnectionPoolManager.poolsInit(C3P0PooledConnectionPoolManager.java:174) ~[c3p0-0.9.2.1.jar:na]
at com.mchange.v2.c3p0.impl.C3P0PooledConnectionPoolManager.<init>(C3P0PooledConnectionPoolManager.java:295) ~[c3p0-0.9.2.1.jar:na]
at com.mchange.v2.c3p0.impl.AbstractPoolBackedDataSource.getPoolManager(AbstractPoolBackedDataSource.java:520) ~[c3p0-0.9.2.1.jar:na]
at com.mchange.v2.c3p0.impl.AbstractPoolBackedDataSource.getConnection(AbstractPoolBackedDataSource.java:140) ~[c3p0-0.9.2.1.jar:na]
at org.hibernate.service.jdbc.connections.internal.DatasourceConnectionProviderImpl.getConnection(DatasourceConnectionProviderImpl.java:141) ~[hibernate-core-4.2.7.Final.jar:4.2.7.Final]
at org.hibernate.engine.jdbc.internal.JdbcServicesImpl$ConnectionProviderJdbcConnectionAccess.obtainConnection(JdbcServicesImpl.java:242) ~[hibernate-core-4.2.7.Final.jar:4.2.7.Final]
at org.hibernate.engine.jdbc.internal.JdbcServicesImpl.configure(JdbcServicesImpl.java:117) ~[hibernate-core-4.2.7.Final.jar:4.2.7.Final]
at org.hibernate.service.internal.StandardServiceRegistryImpl.configureService(StandardServiceRegistryImpl.java:76) ~[hibernate-core-4.2.7.Final.jar:4.2.7.Final]
at org.hibernate.service.internal.AbstractServiceRegistryImpl.initializeService(AbstractServiceRegistryImpl.java:160) ~[hibernate-core-4.2.7.Final.jar:4.2.7.Final]
at org.hibernate.service.internal.AbstractServiceRegistryImpl.getService(AbstractServiceRegistryImpl.java:132) ~[hibernate-core-4.2.7.Final.jar:4.2.7.Final]
at org.hibernate.cfg.Configuration.buildTypeRegistrations(Configuration.java:1822) ~[hibernate-core-4.2.7.Final.jar:na]
at org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:1780) ~[hibernate-core-4.2.7.Final.jar:na]
at org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:1865) ~[hibernate-core-4.2.7.Final.jar:na]
at org.springframework.orm.hibernate4.LocalSessionFactoryBuilder.buildSessionFactory(LocalSessionFactoryBuilder.java:343) ~[spring-orm-4.0.2.RELEASE.jar:4.0.2.RELEASE]
at org.springframework.orm.hibernate4.LocalSessionFactoryBean.buildSessionFactory(LocalSessionFactoryBean.java:431) ~[spring-orm-4.0.2.RELEASE.jar:4.0.2.RELEASE]
at org.springframework.orm.hibernate4.LocalSessionFactoryBean.afterPropertiesSet(LocalSessionFactoryBean.java:416) ~[spring-orm-4.0.2.RELEASE.jar:4.0.2.RELEASE]
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1612) ~[spring-beans-4.0.2.RELEASE.jar:na]
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1549) ~[spring-beans-4.0.2.RELEASE.jar:na]
... 69 common frames omitted

This is my root context

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

<context:property-placeholder location="classpath:props.properties"/>
<tx:annotation-driven transaction-manager="transactionManager"/>

<bean id="transactionManager"
      class="org.springframework.orm.hibernate4.HibernateTransactionManager">
    <property name="sessionFactory" ref="mySessionFactory"/>
</bean>

<bean id="mySessionFactory"
      class="org.springframework.orm.hibernate4.LocalSessionFactoryBean">
    <property name="dataSource" ref="myDataSource"/>
    <property name="hibernateProperties">
        <props>
            <prop key="hibernate.dialect">${locationdb.hibernate.dialect}</prop>
            <prop key="hibernate.show_sql">true</prop>
            <prop key="hibernate.hbm2ddl.auto">update</prop>
            <prop key="hibernate.current_session_context_class">
                org.springframework.orm.hibernate4.SpringSessionContext
            </prop>
        </props>
    </property>
    <property name="packagesToScan">
        <list>
            <value>com.mypackage</value>
        </list>
    </property>
</bean>

<!-- Location DB Datasource -->
<!-- When changing between database types, take note:
      * Change the driverClass and driverClassName below.
      * Update props.properties as needed (see: endpoint and Hibernate dialect)
-->

<bean id="myDataSource" class="com.mchange.v2.c3p0.ComboPooledDataSource"
      destroy-method="close">
    <property name="driverClass" value="com.mysql.jdbc.Driver"/>
    <property name="jdbcUrl" value="${locationdb.endpoint}"/>
    <property name="user" value="${locationdb.username}"/>
    <property name="password" value="${locationdb.password}"/>

    <property name="acquireIncrement" value="${locationdb.c3p0.acquireIncrement}"/>
    <property name="minPoolSize" value="${locationdb.c3p0.minPoolSize}"/>
    <property name="maxPoolSize" value="${locationdb.c3p0.maxPoolSize}"/>
    <property name="maxIdleTime" value="${locationdb.c3p0.maxIdleTime}"/>
</bean>


<!-- Location DB MySQL Datasource -->
<bean id="dataSource" class="org.springframework.jdbc.datasource.DriverManagerDataSource">
    <property name="driverClassName" value="com.mysql.jdbc.Driver"/>
    <property name="url" value="${locationdb.endpoint}"/>
    <property name="username" value="${locationdb.username}"/>
    <property name="password" value="${locationdb.password}"/>
</bean>


<bean id="jedisConnFactory"
      class="org.springframework.data.redis.connection.jedis.JedisConnectionFactory"
      p:hostName="${jedis_endpoint}"
      p:port="${jedis_endpoint_port}"
      p:timeout="${jedis_timeout}"
      p:usePool="true"
      p:poolConfig-ref="jedisPoolConfig"/>

<bean id="serializer" class="org.springframework.data.redis.serializer.StringRedisSerializer"/>

<bean id="redisTemplate"
      class="org.springframework.data.redis.core.RedisTemplate"
      p:connectionFactory-ref="jedisConnFactory"
      p:defaultSerializer-ref="serializer"/>

<bean id="jedisPoolConfig" class="redis.clients.jedis.JedisPoolConfig"
      p:maxTotal="150"
      p:minIdle="5"
      p:maxIdle="15"/>

<!-- Job Manager -->
<bean id="jobManager" class="com.mypackage.restws.controllers.jobs.JobManager"/>


<bean id="restTemplate" class="org.springframework.web.client.RestTemplate"/>

and this is my props.properties

locationdb.hibernate.dialect=org.hibernate.dialect.MySQLDialect

locationdb.endpoint=jdbc:mysql://localhost/locationdb
locationdb.username=root
locationdb.password=root

locationdb.c3p0.acquireIncrement=1
locationdb.c3p0.minPoolSize=1
locationdb.c3p0.maxPoolSize=10
locationdb.c3p0.maxIdleTime=200

optout.endpoint=https://localhost:8443/

My buddies have their project setup successfully, but mine is having this error. Is there anything that I should consider in configuration?

解决方案

This seems like version incompatibility of libraries. A very good ( but verbose) way to find out is by using "-verbose:class" in the JVM parameter of the server startup. This would generate a lot of logs so I prefer to output it to a file on server startup command line. On carefully searching for the Class in question, the logs will also print the jar and it's location from where the classloader picked this class. This could give a hint as to what is the compatibility issue.

这篇关于使用名称'transactionManager:BeanCreationException创建bean时出错的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
相关文章
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆