您的位置:首页 > 移动开发

org.hibernate.MappingException: Could not get constructor for org.hibernate.persister.entity.SingleT

2017-04-13 16:43 531 查看
org.hibernate.MappingException: Could not get constructor for org.hibernate.persister.entity.SingleTableEntityPersister

 at org.hibernate.persister.internal.PersisterFactoryImpl.create(PersisterFactoryImpl.java:185)

 at org.hibernate.persister.internal.PersisterFactoryImpl.createEntityPersister(PersisterFactoryImpl.java:135)

 at org.hibernate.internal.SessionFactoryImpl.<init>(SessionFactoryImpl.java:385)

 at org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:1769)

 at com.sinitek.product.dao.base.BaseDaoImpl.init(BaseDaoImpl.java:24)

 at com.sinitek.product.dao.base.BaseDaoImpl.getSession(BaseDaoImpl.java:30)

 at com.sinitek.product.dao.Impl.ProductsImpl.save(ProductsImpl.java:16)

 at com.sinitek.product.Test.ProductsTest.save(ProductsTest.java:22)

 at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

 at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)

 at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)

 at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:44)

 at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:15)

 at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:41)

 at org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:20)

 at org.junit.runners.BlockJUnit4ClassRunner.runNotIgnored(BlockJUnit4ClassRunner.java:79)

 at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:71)

 at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:49)

 at org.junit.runners.ParentRunner$3.run(ParentRunner.java:193)

 at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:52)

 at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:191)

 at org.junit.runners.ParentRunner.access$000(ParentRunner.java:42)

 at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:184)

 at org.junit.runners.ParentRunner.run(ParentRunner.java:236)

 at org.junit.runner.JUnitCore.run(JUnitCore.java:157)

 at com.intellij.junit4.JUnit4IdeaTestRunner.startRunnerWithArgs(JUnit4IdeaTestRunner.java:78)

 at com.intellij.rt.execution.junit.JUnitStarter.prepareStreamsAndStart(JUnitStarter.java:212)

 at com.intellij.rt.execution.junit.JUnitStarter.main(JUnitStarter.java:68)

 at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

 at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)

 at com.intellij.rt.execution.application.AppMain.main(AppMain.java:140)

Caused by: org.hibernate.HibernateException: Unable to instantiate default tuplizer [org.hibernate.tuple.entity.PojoEntityTuplizer]

 at org.hibernate.tuple.entity.EntityTuplizerFactory.constructTuplizer(EntityTuplizerFactory.java:138)

 at org.hibernate.tuple.entity.EntityTuplizerFactory.constructDefaultTuplizer(EntityTuplizerFactory.java:188)

 at org.hibernate.tuple.entity.EntityMetamodel.<init>(EntityMetamodel.j
4000
ava:341)

 at org.hibernate.persister.entity.AbstractEntityPersister.<init>(AbstractEntityPersister.java:507)

 at org.hibernate.persister.entity.SingleTableEntityPersister.<init>(SingleTableEntityPersister.java:146)

 at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)

 at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)

 at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)

 at java.lang.reflect.Constructor.newInstance(Constructor.java:513)

 at org.hibernate.persister.internal.PersisterFactoryImpl.create(PersisterFactoryImpl.java:163)

 ... 33 more

Caused by: java.lang.reflect.InvocationTargetException

 at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)

 at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)

 at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)

 at java.lang.reflect.Constructor.newInstance(Constructor.java:513)

 at org.hibernate.tuple.entity.EntityTuplizerFactory.constructTuplizer(EntityTuplizerFactory.java:135)

 ... 42 more

Caused by: org.hibernate.PropertyNotFoundException: Could not find a getter for getRecords in class com.sinitek.product.entities.Products

 at org.hibernate.property.BasicPropertyAccessor.createGetter(BasicPropertyAccessor.java:316)

 at org.hibernate.property.BasicPropertyAccessor.getGetter(BasicPropertyAccessor.java:310)

 at org.hibernate.mapping.Property.getGetter(Property.java:321)

 at org.hibernate.tuple.entity.PojoEntityTuplizer.buildPropertyGetter(PojoEntityTuplizer.java:436)

 at org.hibernate.tuple.entity.AbstractEntityTuplizer.<init>(AbstractEntityTuplizer.java:200)

 at org.hibernate.tuple.entity.PojoEntityTuplizer.<init>(PojoEntityTuplizer.java:82)

 ... 47 more

大概有以下几种原因:

1. 实体类的属性对象没有设置setter或者getter。
http://stackoverflow.com/questions/18042247/could-not-get-constructor-for-org-hibernate-persister-entity-singletableentitype
2. 没有导入javassist的jar文件  (javassist-3.15.0-GA.jar什么的)
http://blog.csdn.net/xiaochangwei789/article/details/7712725
3. 我类文件和映射文件属性不对应。

我的实体类中的属性对象名和映射文件的property name不一致。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐