2016-05-06 2 views
0

Я уже проверял решения проблемы, но это не помогло.Hibernate 5: Отображение по аннотации не работает и выбрасывает MappingException (неизвестный объект)

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

Unknown entity: milkiv.easyword.models.UserRole; nested exception is org.hibernate.MappingException: Unknown entity: milkiv.easyword.models.UserRole 

Так что у меня следующий модель файла:

package milkiv.easyword.models; 

import java.io.Serializable; 
import java.util.Objects; 
import javax.persistence.*; 
import javax.validation.constraints.Size; 
import org.hibernate.validator.constraints.NotBlank; 

@Entity (name = "UserRole") 
@Table(name = "user_role") 
public class UserRole implements Serializable{ 
    @Id 
    @GeneratedValue(strategy=GenerationType.AUTO) 
    @Column(name = "role_id", updatable = false, unique = true) 
    private int roleId; 

    @NotBlank(message = "Email field can not be empty or missed.") 
    @Size(min = 3, max = 59, message = "Email field must have from 5 to 128 symbols.") 
    @Column(name = "name", nullable = false, unique = true) 
    private String name; 

    public UserRole() { 
    } 

    public int getRoleId() { 
    return roleId; 
    } 

    public void setRoleId(int roleId) { 
    this.roleId = roleId; 
    } 

    public String getName() { 
    return name; 
    } 

    public void setName(String name) { 
    //INFO: SPRING REQUIRE NAME ROLES IN FORMAT - ROLE_rolename 
    this.name = "ROLE_".concat(name); 
    } 

    @Override 
    public int hashCode() { 
    return (name.hashCode()*31+roleId)*31; 
    } 

    @Override 
    public boolean equals(Object obj) { 
    if (this == obj) { 
     return true; 
    } 
    if (obj == null) { 
     return false; 
    } 
    if (getClass() != obj.getClass()) { 
     return false; 
    } 
    final UserRole other = (UserRole) obj; 
    if (this.roleId != other.roleId) { 
     return false; 
    } 
    return Objects.equals(this.name, other.name); 
    } 
} 

мой весна-context.xml файл:

<beans 
    xmlns="http://www.springframework.org/schema/beans" 
    xmlns:aop="http://www.springframework.org/schema/aop" 
    xmlns:context="http://www.springframework.org/schema/context" 
    xmlns:security="http://www.springframework.org/schema/security" 
    xmlns:tx="http://www.springframework.org/schema/tx" 
    xsi:schemaLocation=" 
     http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-3.0.xsd 
     http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.0.xsd 
     http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-3.0.xsd 
     http://www.springframework.org/schema/security http://www.springframework.org/schema/security/spring-security-3.0.xsd 
     http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-3.0.xsd 
    http://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc-3.1.xsd" 
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:mvc="http://www.springframework.org/schema/mvc"> 

    <bean class="org.springframework.web.servlet.view.InternalResourceViewResolver"> 
    <property name="prefix"> 
     <value>/views/</value> 
    </property> 
    <property name="suffix"> 
     <value>.jsp</value> 
    </property> 
    </bean> 

    <bean id="sessionFactory" class="org.springframework.orm.hibernate5.LocalSessionFactoryBean"> 
    //added when tried to resolve the problem. 
    <property name="packagesToScan" value="milkiv.easyword.models.UserRole"/> 
    <property name="configLocations"> 
     <value>classpath:resources/hibernate.cfg.xml</value> 
    </property> 
    </bean> 

    <bean class="org.springframework.orm.hibernate5.HibernateTemplate"> 
    <property name="sessionFactory" ref="sessionFactory"/> 
    </bean> 

    <bean id="validator" class="org.springframework.validation.beanvalidation.LocalValidatorFactoryBean"/> 

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

    <mvc:resources mapping="/resources/**" location="/resources/"/> 
    <context:annotation-config/> 
    <context:component-scan base-package="milkiv.easyword"/> 
    <tx:annotation-driven/> 
    <mvc:annotation-driven/> 
</beans> 

И зимуют конфигурационный файл hibernate.cfg.xml:

<hibernate-configuration> 
    <session-factory> 
    <property name="hibernate.dialect">org.hibernate.dialect.MySQLDialect</property> 
    <property name="hibernate.connection.driver_class">com.mysql.jdbc.Driver</property> 
    <property name="hibernate.connection.url">jdbc:mysql://localhost/myurl</property> 
    <property name="hibernate.connection.username">username</property> 
    <property name="hibernate.connection.password">password</property> 
    <property name="hibernate.default_schema">easywordweb</property>--> 
    <property name="hibernate.connection.provider_class">org.hibernate.connection.C3P0ConnectionProvider</property> 
    <property name="hibernate.c3p0.min_size">5</property> 
    <property name="hibernate.c3p0.max_size">20</property> 
    <property name="hibernate.c3p0.timeout">300</property> 
    <property name="hibernate.c3p0.max_statements">50</property> 
    <property name="hibernate.temp.use_jdbc_metadata_defaults">false</property> 
    <mapping resource="resources/milkiv/easyword/models/User.hbm.xml"/> 
    <mapping resource="resources/milkiv/easyword/models/UserSessions.hbm.xml"/> 
    <mapping resource="resources/milkiv/easyword/models/Language.hbm.xml"/> 
    <!--<mapping class="milkiv.easyword.models.UserRole"/>--> 
    </session-factory> 
</hibernate-configuration> 

Но когда я пытаюсь вызвать любую функцию из UserRoleManager (UserRoleManager implements UserRoleDAO<UserRole>) в UnitTest У меня есть следующие исключение:

org.springframework.orm.hibernate5.HibernateSystemException: Unknown entity: milkiv.easyword.models.UserRole; nested exception is org.hibernate.MappingException: Unknown entity: milkiv.easyword.models.UserRole 
    at org.springframework.orm.hibernate5.SessionFactoryUtils.convertHibernateAccessException(SessionFactoryUtils.java:219) 
    at org.springframework.orm.hibernate5.HibernateTemplate.doExecute(HibernateTemplate.java:344) 
    at org.springframework.orm.hibernate5.HibernateTemplate.executeWithNativeSession(HibernateTemplate.java:309) 
    at org.springframework.orm.hibernate5.HibernateTemplate.save(HibernateTemplate.java:616) 
    at milkiv.easyword.managers.UserRoleManager.create(UserRoleManager.java:37) 
    at milkiv.easyword.managers.UserRoleManager$$FastClassBySpringCGLIB$$a48099a0.invoke(<generated>) 
    at org.springframework.cglib.proxy.MethodProxy.invoke(MethodProxy.java:204) 
    at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.invokeJoinpoint(CglibAopProxy.java:717) 
    at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:157) 
    at org.springframework.transaction.interceptor.TransactionInterceptor$1.proceedWithInvocation(TransactionInterceptor.java:99) 
    at org.springframework.transaction.interceptor.TransactionAspectSupport.invokeWithinTransaction(TransactionAspectSupport.java:281) 
    at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:96) 
    at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:179) 
    at org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept(CglibAopProxy.java:653) 
    at milkiv.easyword.managers.UserRoleManager$$EnhancerBySpringCGLIB$$2bdb1f79.create(<generated>) 
    at milkiv.easyword.managers.UserRoleManager$$FastClassBySpringCGLIB$$a48099a0.invoke(<generated>) 
    at org.springframework.cglib.proxy.MethodProxy.invoke(MethodProxy.java:204) 
    at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.invokeJoinpoint(CglibAopProxy.java:717) 
    at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:157) 
    at org.springframework.aop.support.DelegatingIntroductionInterceptor.doProceed(DelegatingIntroductionInterceptor.java:133) 
    at org.springframework.aop.support.DelegatingIntroductionInterceptor.invoke(DelegatingIntroductionInterceptor.java:121) 
    at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:179) 
    at org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept(CglibAopProxy.java:653) 
    at milkiv.easyword.managers.UserRoleManager$$EnhancerBySpringCGLIB$$5c468ebb.create(<generated>) 
    at milkiv.easyword.managers.UserRoleManagerTest.createTest(UserRoleManagerTest.java:60) 
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) 
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) 
    at java.lang.reflect.Method.invoke(Method.java:497) 
    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.internal.runners.statements.RunBefores.evaluate(RunBefores.java:28) 
    at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:263) 
    at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:69) 
    at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:48) 
    at org.junit.runners.ParentRunner$3.run(ParentRunner.java:231) 
    at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:60) 
    at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:229) 
    at org.junit.runners.ParentRunner.access$000(ParentRunner.java:50) 
    at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:222) 
    at org.junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:31) 
    at org.junit.runners.ParentRunner.run(ParentRunner.java:292) 
    at org.apache.maven.surefire.junit4.JUnit4Provider.execute(JUnit4Provider.java:242) 
    at org.apache.maven.surefire.junit4.JUnit4Provider.executeTestSet(JUnit4Provider.java:137) 
    at org.apache.maven.surefire.junit4.JUnit4Provider.invoke(JUnit4Provider.java:112) 
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) 
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) 
    at java.lang.reflect.Method.invoke(Method.java:497) 
    at org.apache.maven.surefire.util.ReflectionUtils.invokeMethodWithArray(ReflectionUtils.java:189) 
    at org.apache.maven.surefire.booter.ProviderFactory$ProviderProxy.invoke(ProviderFactory.java:165) 
    at org.apache.maven.surefire.booter.ProviderFactory.invokeProvider(ProviderFactory.java:85) 
    at org.apache.maven.surefire.booter.ForkedBooter.runSuitesInProcess(ForkedBooter.java:115) 
    at org.apache.maven.surefire.booter.ForkedBooter.main(ForkedBooter.java:75) 
Caused by: org.hibernate.MappingException: Unknown entity: milkiv.easyword.models.UserRole 
    at org.hibernate.internal.SessionFactoryImpl.getEntityPersister(SessionFactoryImpl.java:776) 
    at org.hibernate.internal.SessionImpl.getEntityPersister(SessionImpl.java:1451) 
    at org.hibernate.event.internal.AbstractSaveEventListener.saveWithGeneratedId(AbstractSaveEventListener.java:100) 
    at org.hibernate.event.internal.DefaultSaveOrUpdateEventListener.saveWithGeneratedOrRequestedId(DefaultSaveOrUpdateEventListener.java:192) 
    at org.hibernate.event.internal.DefaultSaveEventListener.saveWithGeneratedOrRequestedId(DefaultSaveEventListener.java:38) 
    at org.hibernate.event.internal.DefaultSaveOrUpdateEventListener.entityIsTransient(DefaultSaveOrUpdateEventListener.java:177) 
    at org.hibernate.event.internal.DefaultSaveEventListener.performSaveOrUpdate(DefaultSaveEventListener.java:32) 
    at org.hibernate.event.internal.DefaultSaveOrUpdateEventListener.onSaveOrUpdate(DefaultSaveOrUpdateEventListener.java:73) 
    at org.hibernate.internal.SessionImpl.fireSave(SessionImpl.java:678) 
    at org.hibernate.internal.SessionImpl.save(SessionImpl.java:670) 
    at org.hibernate.internal.SessionImpl.save(SessionImpl.java:665) 
    at org.springframework.orm.hibernate5.HibernateTemplate$12.doInHibernate(HibernateTemplate.java:620) 
    at org.springframework.orm.hibernate5.HibernateTemplate$12.doInHibernate(HibernateTemplate.java:616) 
    at org.springframework.orm.hibernate5.HibernateTemplate.doExecute(HibernateTemplate.java:341) 
    ... 54 more 
milkiv.easyword.managers.UserRoleManagerTest Time elapsed: 0.531 sec <<< ERROR! 
org.springframework.orm.hibernate5.HibernateQueryException: UserRole is not mapped [from UserRole where name = :name]; nested exception is org.hibernate.hql.internal.ast.QuerySyntaxException: UserRole is not mapped [from UserRole where name = :name] 
    at org.springframework.orm.hibernate5.SessionFactoryUtils.convertHibernateAccessException(SessionFactoryUtils.java:176) 
    at org.springframework.orm.hibernate5.HibernateTemplate.doExecute(HibernateTemplate.java:344) 
    at org.springframework.orm.hibernate5.HibernateTemplate.executeWithNativeSession(HibernateTemplate.java:309) 
    at org.springframework.orm.hibernate5.HibernateTemplate.findByNamedParam(HibernateTemplate.java:892) 
    at org.springframework.orm.hibernate5.HibernateTemplate.findByNamedParam(HibernateTemplate.java:882) 
    at milkiv.easyword.managers.UserRoleManager.readByName(UserRoleManager.java:30) 
    at milkiv.easyword.managers.UserRoleManager$$FastClassBySpringCGLIB$$a48099a0.invoke(<generated>) 
    at org.springframework.cglib.proxy.MethodProxy.invoke(MethodProxy.java:204) 
    at org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept(CglibAopProxy.java:649) 
    at milkiv.easyword.managers.UserRoleManager$$EnhancerBySpringCGLIB$$2bdb1f79.readByName(<generated>) 
    at milkiv.easyword.managers.UserRoleManager$$FastClassBySpringCGLIB$$a48099a0.invoke(<generated>) 
    at org.springframework.cglib.proxy.MethodProxy.invoke(MethodProxy.java:204) 
    at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.invokeJoinpoint(CglibAopProxy.java:717) 
    at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:157) 
    at org.springframework.aop.support.DelegatingIntroductionInterceptor.doProceed(DelegatingIntroductionInterceptor.java:133) 
    at org.springframework.aop.support.DelegatingIntroductionInterceptor.invoke(DelegatingIntroductionInterceptor.java:121) 
    at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:179) 
    at org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept(CglibAopProxy.java:653) 
    at milkiv.easyword.managers.UserRoleManager$$EnhancerBySpringCGLIB$$5c468ebb.readByName(<generated>) 
    at milkiv.easyword.managers.UserRoleManagerTest.EraseTestData(UserRoleManagerTest.java:139) 
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) 
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) 
    at java.lang.reflect.Method.invoke(Method.java:497) 
    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.RunAfters.evaluate(RunAfters.java:37) 
    at org.junit.runners.ParentRunner.run(ParentRunner.java:292) 
    at org.apache.maven.surefire.junit4.JUnit4Provider.execute(JUnit4Provider.java:242) 
    at org.apache.maven.surefire.junit4.JUnit4Provider.executeTestSet(JUnit4Provider.java:137) 
    at org.apache.maven.surefire.junit4.JUnit4Provider.invoke(JUnit4Provider.java:112) 
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) 
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) 
    at java.lang.reflect.Method.invoke(Method.java:497) 
    at org.apache.maven.surefire.util.ReflectionUtils.invokeMethodWithArray(ReflectionUtils.java:189) 
    at org.apache.maven.surefire.booter.ProviderFactory$ProviderProxy.invoke(ProviderFactory.java:165) 
    at org.apache.maven.surefire.booter.ProviderFactory.invokeProvider(ProviderFactory.java:85) 
    at org.apache.maven.surefire.booter.ForkedBooter.runSuitesInProcess(ForkedBooter.java:115) 
    at org.apache.maven.surefire.booter.ForkedBooter.main(ForkedBooter.java:75) 
Caused by: org.hibernate.hql.internal.ast.QuerySyntaxException: UserRole is not mapped [from UserRole where name = :name] 
    at org.hibernate.hql.internal.ast.QuerySyntaxException.generateQueryException(QuerySyntaxException.java:79) 
    at org.hibernate.QueryException.wrapWithQueryString(QueryException.java:103) 
    at org.hibernate.hql.internal.ast.QueryTranslatorImpl.doCompile(QueryTranslatorImpl.java:218) 
    at org.hibernate.hql.internal.ast.QueryTranslatorImpl.compile(QueryTranslatorImpl.java:142) 
    at org.hibernate.engine.query.spi.HQLQueryPlan.<init>(HQLQueryPlan.java:115) 
    at org.hibernate.engine.query.spi.HQLQueryPlan.<init>(HQLQueryPlan.java:76) 
    at org.hibernate.engine.query.spi.QueryPlanCache.getHQLQueryPlan(QueryPlanCache.java:150) 
    at org.hibernate.internal.AbstractSessionImpl.getHQLQueryPlan(AbstractSessionImpl.java:298) 
    at org.hibernate.internal.AbstractSessionImpl.createQuery(AbstractSessionImpl.java:236) 
    at org.hibernate.internal.SessionImpl.createQuery(SessionImpl.java:1825) 
    at org.springframework.orm.hibernate5.HibernateTemplate$30.doInHibernate(HibernateTemplate.java:895) 
    at org.springframework.orm.hibernate5.HibernateTemplate$30.doInHibernate(HibernateTemplate.java:892) 
    at org.springframework.orm.hibernate5.HibernateTemplate.doExecute(HibernateTemplate.java:341) 
    ... 39 more 
Caused by: org.hibernate.hql.internal.ast.QuerySyntaxException: UserRole is not mapped 
    at org.hibernate.hql.internal.ast.util.SessionFactoryHelper.requireClassPersister(SessionFactoryHelper.java:171) 
    at org.hibernate.hql.internal.ast.tree.FromElementFactory.addFromElement(FromElementFactory.java:91) 
    at org.hibernate.hql.internal.ast.tree.FromClause.addFromElement(FromClause.java:76) 
    at org.hibernate.hql.internal.ast.HqlSqlWalker.createFromElement(HqlSqlWalker.java:321) 
    at org.hibernate.hql.internal.antlr.HqlSqlBaseWalker.fromElement(HqlSqlBaseWalker.java:3678) 
    at org.hibernate.hql.internal.antlr.HqlSqlBaseWalker.fromElementList(HqlSqlBaseWalker.java:3567) 
    at org.hibernate.hql.internal.antlr.HqlSqlBaseWalker.fromClause(HqlSqlBaseWalker.java:708) 
    at org.hibernate.hql.internal.antlr.HqlSqlBaseWalker.query(HqlSqlBaseWalker.java:564) 
    at org.hibernate.hql.internal.antlr.HqlSqlBaseWalker.selectStatement(HqlSqlBaseWalker.java:301) 
    at org.hibernate.hql.internal.antlr.HqlSqlBaseWalker.statement(HqlSqlBaseWalker.java:249) 
    at org.hibernate.hql.internal.ast.QueryTranslatorImpl.analyze(QueryTranslatorImpl.java:262) 
    at org.hibernate.hql.internal.ast.QueryTranslatorImpl.doCompile(QueryTranslatorImpl.java:190) 
    ... 49 more 

сообщения ясны, но причина этого - нет. Пожалуйста, если у кого есть идеи, вы можете мне помочь? Буду признателен за любую помощь. Спасибо заранее.

EDIT: Я использую Hibernate 5.0.1.Наконечная версия.

EDIT: Пробовал этот. Также не работает для меня:

<bean id="sessionFactory" class="org.springframework.orm.hibernate5.LocalSessionFactoryBean"> 
    <property name="annotatedClasses"> 
     <list> 
     <value>milkiv.easyword.models</value> 
     </list> 
    </property> 
    <property name="configLocations"> 
     <value>classpath:resources/hibernate.cfg.xml</value> 
    </property> 
</bean> 
+0

Это неправильный '' –

+0

@ v.ladynev, Oooh. Понимаю. Он должен быть без UserRole. Я пробовал также 'value =" milkiv.easyword.models ", и он не работает. Я прочитал описание setter для переменной packegesToScan, которое мне нужно. «Укажите пакеты для поиска автоматического определения ваших классов объектов в пути к классам». Я также попытался установить переменную annotatedClasses. Я обновляю свой пост. – Nickolas

+0

Попробуйте начать с простого консольного приложения без Spring. Затем добавьте материал Spring без Интернета. У вас много ненужных вещей: например, укажите имя таблицы с '@ Entity' и' @ Table'. 'unique = true' для первичного ключа и т. д. –

ответ

1

Hibernate не знает о вашем аннотированный класс, вы должны сказать зимуют, где он, с этим свойством в сессии фабрики XML:

<mapping package="milkiv.easyword.models"/> 

или непосредственно класс:

<mapping class="milkiv.easyword.models.UserRole"/> 

Отъезд в docs.

+0

Спасибо за ответ. Я пробовал второе решение, и, к сожалению, для меня это не работает. Как и первый. Те же исключения произошли. – Nickolas

+0

Как вы создаете фабрику сеансов? вы используете AnnotationConfiguration? потому что, если вы используете устаревшие HibernateUtils, он по умолчанию не поддерживает аннотированные объекты. –

+0

Я использовал HibernateTemplate из org.springframework.orm.hibernate5 заставляет его делать все с сессиями вместо меня или это плохое решение? И введите в HibernateTemplate как sessionFactory LocalSessionFactoryBean из того же пакета. Похоже, проблема связана с LocalSessionFactoryBean. Я попытался ввести annotatedClasses и annotatedPackages значения в LocalSessionFactoryBean, но это не сработало. – Nickolas

Смежные вопросы