Весенняя зимняя спячка - PullRequest
1 голос
/ 24 мая 2011

Я получаю эту ошибку:

org.hibernate.MappingException: Unknown entity: xxx.model.Application

Однако все выглядит правильно настроенным. Кто-нибудь может увидеть, если я что-то упустил?

<bean class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
    <property name="location" value="file:/dctm/db.props"/>
</bean>

<bean id="xxxDataSource" class="org.springframework.jdbc.datasource.DriverManagerDataSource" destroy-method="close">
    <property name="driverClassName" value="oracle.jdbc.driver.OracleDriver"/>
    <property name="url" value="${db.url}"/>
    <property name="username" value="${db.username}"/>
    <property name="password" value="${db.password}"/>
</bean>

<bean id="xxxSessionFactory" class="org.springframework.orm.hibernate3.annotation.AnnotationSessionFactoryBean">
    <property name="dataSource" ref="xxxDataSource"/>

    <property name="annotatedClasses">
    <list>
        <value>xxx.model.Application</value>
    </list>
        </property>

    <property name="hibernateProperties">
        <props>
            <prop key="hibernate.dialect">${db.dialect}</prop>
            <prop key="hibernate.show_sql">${db.debug_sql}</prop>
            <prop key="hibernate.c3p0.minPoolSize">1</prop>
            <prop key="hibernate.c3p0.maxPoolSize">5</prop>
            <prop key="hibernate.c3p0.timeout">${db.timeout}</prop>
            <prop key="hibernate.c3p0.max_statement">50</prop>
            <prop key="hibernate.c3p0.testConnectionOnCheckout">false</prop>
            <prop key="hibernate.current_session_context_class">thread</prop>
        </props>
    </property>
</bean>

<bean id="patiDao" class="xxx.dao.hibernate.PatiHibernateDao">
    <property name="sessionFactory" ref="xxxSessionFactory"/>
</bean>

Ответы [ 4 ]

1 голос
/ 24 мая 2011

Я вижу две причины этой ошибки.Во-первых, если вы пропустили @Entity в Application классе.Второй - если класс Application не находится в пути сборки и не развернут в JBoss.

1 голос
/ 24 мая 2011

Возможно, вы пропали без вести @Entity

@Entity
@Table(name="COURSES")
public class Application{
  //some code
}
0 голосов
/ 05 декабря 2011

Можно попытаться разрешить AnnotationSessionFactoryBean самостоятельно найти классы @ Entity (путем сканирования путей к классам), указав вместо этого значение для его свойства packagesToScan ручного указания классов с помощью свойства annotatedClasses .

0 голосов
/ 24 мая 2011

Вы используете JPA или просто Hibernate?Если вы используете JPA, попробуйте определить META-INF / persistence.xml, где вы будете определять классы аннотированных сущностей:

<persistence-unit name="myPU" transaction-type="RESOURCE_LOCAL">
    <provider>org.hibernate.ejb.HibernatePersistence</provider>
    <non-jta-data-source>java:/MyDS</non-jta-data-source>
    <class>xxx.model.Application</class>
    <class>xxx.model.Class2</class>
    <exclude-unlisted-classes />
</persistence-unit>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...