org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'sessionFactory' defined in class path resource [spring-hibernate.xml]: Invocation of init method failed; nested exception is java.lang.NoSuchMethodError: javax.persistence.Table.indexes()[Ljavax/persistence/Index;
at org.springframework.beans.factory.support.AbstractAutowireCapableB
eanFactory.initializeBean(AbstractAutowireCapableB
eanFactory.java:1553)
at org.springframework.beans.factory.support.AbstractAutowireCapableB
eanFactory.doCreateBean(AbstractAutowireCapableB
eanFactory.java:539)
at org.springframework.beans.factory.support.AbstractAutowireCapableB
eanFactory.createBean(AbstractAutowireCapableB
eanFactory.java:475)
at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:304)
at org.springframework.beans.factory.support.DefaultSingletonBeanRegi
stry.getSingleton(DefaultSingletonBeanRegi
stry.java:228)
at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:300)
at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:195)
at org.springframework.beans.factory.support.DefaultListableBeanFacto
ry.preInstantiateSingletons
(DefaultListableBeanFacto
ry.java:684)
at org.springframework.context.support.AbstractApplicationConte
xt.finishBeanFactoryInitial
ization(AbstractApplicationConte
xt.java:760)
at org.springframework.context.support.AbstractApplicationConte
xt.refresh(AbstractApplicationConte
xt.java:482)
at org.springframework.web.context.ContextLoader.configureAndRefreshWebAp
plicationContext(ContextLoader.java:403)
at org.springframework.web.context.ContextLoader.initWebApplicationContex
t(ContextLoader.java:306)
at org.springframework.web.context.ContextLoaderListener.contextInitialized(ContextLoaderListener.java:106)
at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:5003)
at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5517)
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1574)
at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1564)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
at java.lang.Thread.run(Thread.java:745)
Caused by: java.lang.NoSuchMethodError: javax.persistence.Table.indexes()[Ljavax/persistence/Index;
at org.hibernate.cfg.annotations.EntityBinder.processComplementaryTabl
eDefinitions(EntityBinder.java:936)
at org.hibernate.cfg.AnnotationBinder.bindClass(AnnotationBinder.java:824)
at org.hibernate.cfg.Configuration$MetadataSourceQueue.processAnnotatedClassesQ
ueue(Configuration.java:3788)
at org.hibernate.cfg.Configuration$MetadataSourceQueue.processMetadata(Configuration.java:3742)
at org.hibernate.cfg.Configuration.secondPassCompile(Configuration.java:1410)
at org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:1844)
at org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:1928)
at org.springframework.orm.hibernate4.LocalSessionFactoryBuild
er.buildSessionFactory(LocalSessionFactoryBuild
er.java:343)
at org.springframework.orm.hibernate4.LocalSessionFactoryBean.buildSessionFactory(LocalSessionFactoryBean.java:431)
at org.springframework.orm.hibernate4.LocalSessionFactoryBean.afterPropertiesSet(LocalSessionFactoryBean.java:416)
at org.springframework.beans.factory.support.AbstractAutowireCapableB
eanFactory.invokeInitMethods(AbstractAutowireCapableB
eanFactory.java:1612)
at org.springframework.beans.factory.support.AbstractAutowireCapableB
eanFactory.initializeBean(AbstractAutowireCapableB
eanFactory.java:1549)
... 21 more
九月 01, 2016 7:40:41 下午 org.apache.catalina.core.StandardContext listenerStart
严重: Exception sending context initialized event to listener instance of class org.springframework.web.context.ContextLoaderListener
org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'sessionFactory' defined in class path resource [spring-hibernate.xml]: Invocation of init method failed; nested exception is java.lang.NoSuchMethodError: javax.persistence.Table.indexes()[Ljavax/persistence/Index;
at org.springframework.beans.factory.support.AbstractAutowireCapableB
eanFactory.initializeBean(AbstractAutowireCapableB
eanFactory.java:1553)
at org.springframework.beans.factory.support.AbstractAutowireCapableB
eanFactory.doCreateBean(AbstractAutowireCapableB
eanFactory.java:539)
at org.springframework.beans.factory.support.AbstractAutowireCapableB
eanFactory.createBean(AbstractAutowireCapableB
eanFactory.java:475)
at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:304)
at org.springframework.beans.factory.support.DefaultSingletonBeanRegi
stry.getSingleton(DefaultSingletonBeanRegi
stry.java:228)
at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:300)
at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:195)
at org.springframework.beans.factory.support.DefaultListableBeanFacto
ry.preInstantiateSingletons
(DefaultListableBeanFacto
ry.java:684)
at org.springframework.context.support.AbstractApplicationConte
xt.finishBeanFactoryInitial
ization(AbstractApplicationConte
xt.java:760)
at org.springframework.context.support.AbstractApplicationConte
xt.refresh(AbstractApplicationConte
xt.java:482)
at org.springframework.web.context.ContextLoader.configureAndRefreshWebAp
plicationContext(ContextLoader.java:403)
at org.springframework.web.context.ContextLoader.initWebApplicationContex
t(ContextLoader.java:306)
at org.springframework.web.context.ContextLoaderListener.contextInitialized(ContextLoaderListener.java:106)
at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:5003)
at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5517)
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1574)
at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1564)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
at java.lang.Thread.run(Thread.java:745)
Caused by: java.lang.NoSuchMethodError: javax.persistence.Table.indexes()[Ljavax/persistence/Index;
at org.hibernate.cfg.annotations.EntityBinder.processComplementaryTabl
eDefinitions(EntityBinder.java:936)
at org.hibernate.cfg.AnnotationBinder.bindClass(AnnotationBinder.java:824)
at org.hibernate.cfg.Configuration$MetadataSourceQueue.processAnnotatedClassesQ
ueue(Configuration.java:3788)
at org.hibernate.cfg.Configuration$MetadataSourceQueue.processMetadata(Configuration.java:3742)
at org.hibernate.cfg.Configuration.secondPassCompile(Configuration.java:1410)
at org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:1844)
at org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:1928)
at org.springframework.orm.hibernate4.LocalSessionFactoryBuild
er.buildSessionFactory(LocalSessionFactoryBuild
er.java:343)
at org.springframework.orm.hibernate4.LocalSessionFactoryBean.buildSessionFactory(LocalSessionFactoryBean.java:431)
at org.springframework.orm.hibernate4.LocalSessionFactoryBean.afterPropertiesSet(LocalSessionFactoryBean.java:416)
at org.springframework.beans.factory.support.AbstractAutowireCapableB
eanFactory.invokeInitMethods(AbstractAutowireCapableB
eanFactory.java:1612)
at org.springframework.beans.factory.support.AbstractAutowireCapableB
eanFactory.initializeBean(AbstractAutowireCapableB
eanFactory.java:1549)
... 21 more
这个bug 弄得我有点无语,然后上网查了查,原来是映射类的问题,
@Entity
@Table(name = "t_user", catalog = "wpr")
public class TUser implements java.io.Serializable {
这个是hibernate tool 自动生成的,因为我们用的hibernate 4是,所以这儿就有了问题,
我们可以改为
@Entity(name = "t_user" )
public class TUser implements java.io.Serializable {
这样就可以了
Caused by: java.lang.NoSuchMethodError: javax.persistence.Table.indexes()[Ljavax/persistence/Index;
九月 01, 2016 7:40:41 下午 org.apache.catalina.core.StandardContext listenerStart
严重: Exception sending context initialized event to listener instance of class org.springframework.web.context.ContextLoaderListener
org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'sessionFactory' defined in class path resource [spring-hibernate.xml]: Invocation of init method failed; nested exception is java.lang.NoSuchMethodError: javax.persistence.Table.indexes()[Ljavax/persistence/Index;
Caused by: java.lang.NoSuchMethodError: javax.persistence.Table.indexes()[Ljavax/persistence/Index;
这个bug 弄得我有点无语,然后上网查了查,原来是映射类的问题,
@Entity
@Table(name = "t_user", catalog = "wpr")
public class TUser implements java.io.Serializable {
这个是hibernate tool 自动生成的,因为我们用的hibernate 4是,所以这儿就有了问题,
我们可以改为
@Entity(name = "t_user" )
public class TUser implements java.io.Serializable {
这样就可以了