org.hibernate.HibernateException: не удалось определить тип динамической сущности

#java #hibernate

#java #спящий режим

Вопрос:

Я новичок в гибернации, и у меня есть приведенный ниже код в одном из моих проектов:

 ShortHand o = new ShortHand();
    Session sess = noprobs.getSessionFactory().openSession();


                    sess.getTransaction().setTimeout(noprobs.xActionTimeout);
                tx = sess.beginTransaction();
                sess.save(o);
  

Для чего я получаю приведенную ниже ошибку:

ОШИБКА:

 org.hibernate.HibernateException: could not determine type of dynamic entity
    at org.hibernate.impl.SessionImpl.guessEntityName(SessionImpl.java:1770)
    at org.hibernate.impl.SessionImpl.getEntityPersister(SessionImpl.java:1338)
    at org.hibernate.event.def.AbstractSaveEventListener.saveWithGeneratedId(AbstractSaveEventListener.java:98)
    at org.hibernate.event.def.DefaultSaveOrUpdateEventListener.saveWithGeneratedOrRequestedId(DefaultSaveOrUpdateEventListener.java:187)
    at org.hibernate.event.def.DefaultSaveEventListener.saveWithGeneratedOrRequestedId(DefaultSaveEventListener.java:33)
    at org.hibernate.event.def.DefaultSaveOrUpdateEventListener.entityIsTransient(DefaultSaveOrUpdateEventListener.java:172)
    at org.hibernate.event.def.DefaultSaveEventListener.performSaveOrUpdate(DefaultSaveEventListener.java:27)
    at org.hibernate.event.def.DefaultSaveOrUpdateEventListener.onSaveOrUpdate(DefaultSaveOrUpdateEventListener.java:70)
    at org.hibernate.impl.SessionImpl.fireSave(SessionImpl.java:535)
    at org.hibernate.impl.SessionImpl.save(SessionImpl.java:523)
    at org.hibernate.impl.SessionImpl.save(SessionImpl.java:519)
    at cool.wxhy.tms.xyz.ABCD.persistInDb(ABCD.java:235)
    at cool.wxhy.tms.xyz.ABCD.subscribeToAmps(ABCD.java:144)
    at cool.wxhy.tms.xyz.ABCD.hot(ABCD.java:102)
    at cool.wxhy.service.impl.wxhyBase.start(wxhyBase.java:250)
    at cool.wxhy.service.api.hello.startAllServices(hello.java:211)
    at cool.wxhy.service.impl.heyhi.main(heyhi.java:43)
  

Я использую HIbernate 3.2.6 jar

Я использую конфигурацию XML для режима гибернации, а не для аннотаций. Может кто-нибудь, пожалуйста, помочь по этому вопросу.

Файл отображения гибернации:

 <hibernate-mapping package="bofa.pioneer.tms.objects">
    <class name="ShortHand" table="ShortHand">
      <id name="key" column="id" unsaved-value="null" type="string" >
        <generator class="assigned" />
      </id>

        <property name="animal" column="animal" type="string"/>
        <property name="dog" column="dog" type="string"/>
  

Сущность

 public class ShortHand extends LongHand {
 //getters and setters are present in the parent LongHand
 }
  

Комментарии:

1. Можете ли вы добавить свою сущность и файл конфигурации?

2. И LongHand, очевидно, настроен как @MappedSuperclass, верно?:>

3. У меня нет аннотаций в моем проекте. Я использую xml

4. Я предполагаю, что он должен быть настроен аналогичным образом, я думаю.

5. @Antoniossss родительский класс и подкласс имеют отдельные файлы сопоставления и отдельные таблицы