Java — Hibernate Exception — невозможно сопоставить обратную связь [из обратной связи]

Я новичок в Hibernate. Недавно я пробовал простой пример подключения моего пользовательского интерфейса к базе данных с использованием Spring и Hibernate.

Я могу успешно вызвать метод для получения данных через мой контроллер, службу и т. д., используя REST. Но я сталкиваюсь с ошибкой ниже, когда я запускаю приложение. Здесь «Feedback» — это имя таблицы в базе данных, а также то же имя моего класса Pojo Java.

Примечание. Присвоение разных имен таблице и классу Java также приводит к той же ошибке.

org.springframework.orm.hibernate3.HibernateQueryException: обратная связь не сопоставлена ​​[из обратной связи]; вложенным исключением является org.hibernate.hql.ast.QuerySyntaxException: обратная связь не отображается [из обратной связи]

Ява Поджо: -

import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.Id;
import javax.persistence.Table;

@Entity
@Table(name="Feedback")
public class Feedback {
    private int id;
    private String title;
    private String content;
    private String name;

    @Id
    @GeneratedValue
    @Column(name="id")
    public int getId() {
        return id;
    }
    public void setId(int id) {
        this.id = id;
    }

    @Column(name="title", nullable=false)
    public String getTitle() {
        return title;
    }
    public void setTitle(String title) {
        this.title = title;
    }

    @Column(name="content", nullable=false)
    public String getContent() {
        return content;
    }
    public void setContent(String content) {
        this.content = content;
    }

    @Column(name="name", nullable=false)
    public String getName() {
        return name;
    }
    public void setName(String name) {
        this.name = name;
    }
    @Override
    public String toString() {
        return "Feedback [id=" + id + ", title=" + title + ", content="
                + content + ", name=" + name + "]";
    }
}

Обратная связьДАО :-

@Repository
public class FeedbackDAO implements IFeedbackDAO {

    private HibernateTemplate hibernateTemplate;

    public HibernateTemplate getHibernateTemplate() {
        return hibernateTemplate;
    }

    @Autowired
    public void setSessionFactory(SessionFactory sessionFactory) {
        hibernateTemplate = new HibernateTemplate(sessionFactory);
    }

    @SuppressWarnings("unchecked")
    public List<Feedback> getFeedbackList() {

       // This line causes that error.
        return hibernateTemplate.find("from Feedback");

    }
       ...
       ...
}

Конфигурация выполнена в db-config.xml

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

Что может быть причиной этого ?

Я что-то здесь упускаю?

Спасибо


person Daemon    schedule 02.09.2012    source источник
comment
Если вам нужна дополнительная информация, пожалуйста, дайте мне знать.   -  person Daemon    schedule 02.09.2012


Ответы (1)


Возможно, вы что-то упустили в определении sessionFactory.

<bean id="sessionFactory" ...>
    ...
    <property name="annotatedClasses">
        <list>
            <value><java package name here>.Feedback</value>
        </list>
    </property>
    ...
</bean>
person su-    schedule 02.09.2012
comment
Вот оно! Далее я упомянул здесь какой-то другой каталог пакетов.. Спасибо! Это решило это.. - person Daemon; 02.09.2012
comment
Без проблем. Я столкнулся с той же проблемой однажды в прошлом. - person su-; 02.09.2012