Hibernate 我无法创建休眠会话。不要为篇幅而烦恼,我只是把所有的信息都包括进去,让读者更容易理解

Hibernate 我无法创建休眠会话。不要为篇幅而烦恼,我只是把所有的信息都包括进去,让读者更容易理解,hibernate,hibernate-mapping,Hibernate,Hibernate Mapping,我试图通过调用NewHibernateUtil.getSessionFactory()来获取sessionFactory;我总是会遇到以下错误: org.hibernate.HibernateException:无法实例化默认元组化程序[org.hibernate.tuple.entity.PojoEntityTuplizer] 我的映射文件是: <hibernate-configuration> <session-factory> <property

我试图通过调用NewHibernateUtil.getSessionFactory()来获取sessionFactory;我总是会遇到以下错误:

org.hibernate.HibernateException:无法实例化默认元组化程序[org.hibernate.tuple.entity.PojoEntityTuplizer]

我的映射文件是:

<hibernate-configuration>
  <session-factory>
    <property name="hibernate.dialect">org.hibernate.dialect.MySQLInnoDBDialect</property>
    <property name="hibernate.connection.driver_class">com.mysql.jdbc.Driver</property>
    <property name="hibernate.connection.url">jdbc:mysql://localhost:3306/*****</property>
    <property name="hibernate.connection.username">******</property>
    <property name="hibernate.connection.password">******</property>
    <property name="hibernate.hbm2ddl.auto">update</property>
    <property name="hibernate.show_sql">true</property>
    <mapping resource="contacts/employee.hbm.xml"/>
    <mapping resource="contacts/responsibilitiy.hbm.xml"/>
  </session-factory>
</hibernate-configuration>
完整日志:

 Caused by:org.hibernate.HibernateException: Unable to instantiate default tuplizer [org.hibernate.tuple.entity.PojoEntityTuplizer]
        at org.hibernate.tuple.entity.EntityTuplizerFactory.constructTuplizer(EntityTuplizerFactory.java:108)
        at org.hibernate.tuple.entity.EntityTuplizerFactory.constructDefaultTuplizer(EntityTuplizerFactory.java:133)
        at org.hibernate.tuple.entity.EntityEntityModeToTuplizerMapping.<init>(EntityEntityModeToTuplizerMapping.java:80)
        at org.hibernate.tuple.entity.EntityMetamodel.<init>(EntityMetamodel.java:322)
        at org.hibernate.persister.entity.AbstractEntityPersister.<init>(AbstractEntityPersister.java:485)
        at org.hibernate.persister.entity.SingleTableEntityPersister.<init>(SingleTableEntityPersister.java:133)
        at org.hibernate.persister.PersisterFactory.createClassPersister(PersisterFactory.java:84)
        at org.hibernate.impl.SessionFactoryImpl.<init>(SessionFactoryImpl.java:286)
        at org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:1872)
        at startUp.NewHibernateUtil.buildSessionFactory(NewHibernateUtil.java:28)
        ... 29 more
    Caused by: java.lang.reflect.InvocationTargetException
        at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
        at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:57)
        at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
        at java.lang.reflect.Constructor.newInstance(Constructor.java:526)
        at org.hibernate.tuple.entity.EntityTuplizerFactory.constructTuplizer(EntityTuplizerFactory.java:105)
        ... 38 more
    Caused by: org.hibernate.PropertyNotFoundException: Could not find a setter for property responsibilityId in class contacts.responsibilities
        at org.hibernate.property.BasicPropertyAccessor.createSetter(BasicPropertyAccessor.java:262)
        at org.hibernate.property.BasicPropertyAccessor.getSetter(BasicPropertyAccessor.java:255)
        at org.hibernate.mapping.Property.getSetter(Property.java:335)
        at org.hibernate.tuple.entity.PojoEntityTuplizer.buildPropertySetter(PojoEntityTuplizer.java:304)
        at org.hibernate.tuple.entity.AbstractEntityTuplizer.<init>(AbstractEntityTuplizer.java:137)
        at org.hibernate.tuple.entity.PojoEntityTuplizer.<init>(PojoEntityTuplizer.java:77)
        ... 43 more
原因:org.hibernate.hibernateeexception:无法实例化默认tuplizer[org.hibernate.tuple.entity.PojoEntityTuplizer]
位于org.hibernate.tuple.entity.EntityTuplizerFactory.ConstructionTuplizer(EntityTuplizerFactory.java:108)
位于org.hibernate.tuple.entity.EntityTuplizerFactory.ConstructionDefaultTuplizer(EntityTuplizerFactory.java:133)
位于org.hibernate.tuple.entity.EntityModelToUplizerMapping。(EntityEntityModelToUplizerMapping.java:80)
位于org.hibernate.tuple.entity.EntityMetamodel。(EntityMetamodel.java:322)
位于org.hibernate.persister.entity.AbstractEntityPersister。(AbstractEntityPersister.java:485)
位于org.hibernate.persister.entity.SingleTableEntityTyperSister。(SingleTableEntityTyperSister.java:133)
位于org.hibernate.persister.PersisterFactory.createClassPersister(PersisterFactory.java:84)
位于org.hibernate.impl.SessionFactoryImpl.(SessionFactoryImpl.java:286)
位于org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:1872)
启动时.NewHibernateUtil.buildSessionFactory(NewHibernateUtil.java:28)
... 还有29个
原因:java.lang.reflect.InvocationTargetException
位于sun.reflect.NativeConstructorAccessorImpl.newInstance0(本机方法)
位于sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:57)
在sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
位于java.lang.reflect.Constructor.newInstance(Constructor.java:526)
位于org.hibernate.tuple.entity.EntityTuplizerFactory.ConstructionTuplizer(EntityTuplizerFactory.java:105)
... 38多
原因:org.hibernate.PropertyNotFoundException:在类contacts.responsibility中找不到属性responsibilityId的setter
位于org.hibernate.property.BasicPropertyAccessor.createSetter(BasicPropertyAccessor.java:262)
位于org.hibernate.property.BasicPropertyAccessor.getSetter(BasicPropertyAccessor.java:255)
位于org.hibernate.mapping.Property.getSetter(Property.java:335)
位于org.hibernate.tuple.entity.PojoEntityTuplizer.buildPropertySetter(PojoEntityTuplizer.java:304)
位于org.hibernate.tuple.entity.AbstractEntityTuplizer。(AbstractEntityTuplizer.java:137)
位于org.hibernate.tuple.entity.PojoEntityTuplizer。(PojoEntityTuplizer.java:77)
... 43多

我根据堆栈跟踪在代码中找到了原因

Caused by: org.hibernate.PropertyNotFoundException: Could not find a setter for property responsibilityId in class contacts.responsibilities
请将setter方法
setResponsibilityId
->更改为
setResponsibilityId
,它有打字错误,您在
ResponsibilityId

应该是

public void setResponsibilityId(long responsibilityId) {
    this.responsibilityId = responsibilityId;
}

我根据堆栈跟踪在代码中找到了原因

Caused by: org.hibernate.PropertyNotFoundException: Could not find a setter for property responsibilityId in class contacts.responsibilities
请将setter方法
setResponsibilityId
->更改为
setResponsibilityId
,它有打字错误,您在
ResponsibilityId

应该是

public void setResponsibilityId(long responsibilityId) {
    this.responsibilityId = responsibilityId;
}

我根据堆栈跟踪在代码中找到了原因

Caused by: org.hibernate.PropertyNotFoundException: Could not find a setter for property responsibilityId in class contacts.responsibilities
请将setter方法
setResponsibilityId
->更改为
setResponsibilityId
,它有打字错误,您在
ResponsibilityId

应该是

public void setResponsibilityId(long responsibilityId) {
    this.responsibilityId = responsibilityId;
}

我根据堆栈跟踪在代码中找到了原因

Caused by: org.hibernate.PropertyNotFoundException: Could not find a setter for property responsibilityId in class contacts.responsibilities
请将setter方法
setResponsibilityId
->更改为
setResponsibilityId
,它有打字错误,您在
ResponsibilityId

应该是

public void setResponsibilityId(long responsibilityId) {
    this.responsibilityId = responsibilityId;
}

我认为问题在于你们的能手和二传手。请向员工特别负责小组责任的设定人核实

公共集GetGroupOfReposabilities(){

公共void集合可恢复性组(集合组){


我认为问题在于你们的接受者和接受者。请和接受者联系,为员工特别是为责任群体

公共集GetGroupOfReposabilities(){

公共void集合可恢复性组(集合组){


我认为问题在于你们的接受者和接受者。请和接受者联系,为员工特别是为责任群体

公共集GetGroupOfReposabilities(){

公共void集合可恢复性组(集合组){


我认为问题在于你们的接受者和接受者。请和接受者联系,为员工特别是为责任群体

公共集GetGroupOfReposabilities(){

公共void集合可恢复性组(集合组){



javaassist.jar在类路径中吗?javaassist.jar在类路径中吗?javaassist.jar在类路径中吗?javaassist.jar在类路径中吗?employee.java中的setter和getter都很好,我检查过了。在employee中没有错误定义的员工(getGroup(),setGroup())对于GroupofResponsibility。使用我回答中提到的getter和setter。哦,好的,我试试看,现在我正在修复我的打字错误。但是谢谢你的回答。你是对的,我在代码中犯了很多错误,所以如果我像“public Set getgroupofResponsibility(){return groupofResponsibility;}这样写的话public void setGroupOfResponsibilities(Set group){this.groupOfResponsibilities=group;}“这是正确的吗?Woo,它解决了这个问题,非常感谢我的朋友。你和jaysagar都帮了很多忙。employee.java中的setter和getter很好,我检查过了。你没有在employee中定义错误(getGroup(),setGroup())对于一组可替换项。使用我回答中提到的getter和setter。哦,好的,我试试看,现在我正在纠正我的拼写错误。但是谢谢你的回答。向上投票