Java 正在获取hibernate.UnknownEntityTypeException:无法在应用程序启动时找到persister
我正在学习Hibernate JPA。我正试图从这段代码中运行JPA部件- 以下是所有代码和配置- 应用程序属性Java 正在获取hibernate.UnknownEntityTypeException:无法在应用程序启动时找到persister,java,spring,hibernate,jpa,Java,Spring,Hibernate,Jpa,我正在学习Hibernate JPA。我正试图从这段代码中运行JPA部件- 以下是所有代码和配置- 应用程序属性 spring.datasource.url=jdbc:h2:mem:testdb spring.datasource.driverClassName=org.h2.Driver spring.datasource.username=sa spring.datasource.password= spring.jpa.database-platform=org.hibernate.di
spring.datasource.url=jdbc:h2:mem:testdb
spring.datasource.driverClassName=org.h2.Driver
spring.datasource.username=sa
spring.datasource.password=
spring.jpa.database-platform=org.hibernate.dialect.H2Dialect
xml-我使用的是Spring2.1.11.RELEASE
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.in28minutes.database</groupId>
<artifactId>database-demo</artifactId>
<version>0.0.1-SNAPSHOT</version>
<packaging>jar</packaging>
<name>database-demo</name>
<description>Demo project for Spring Boot</description>
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.1.11.RELEASE</version>
<relativePath/> <!-- lookup parent from repository -->
</parent>
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
<java.version>1.8</java.version>
</properties>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-jpa</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-jdbc</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>com.h2database</groupId>
<artifactId>h2</artifactId>
<scope>runtime</scope>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
</build>
<repositories>
<repository>
<id>spring-snapshots</id>
<name>Spring Snapshots</name>
<url>https://repo.spring.io/snapshot</url>
<snapshots>
<enabled>true</enabled>
</snapshots>
</repository>
<repository>
<id>spring-milestones</id>
<name>Spring Milestones</name>
<url>https://repo.spring.io/milestone</url>
<snapshots>
<enabled>false</enabled>
</snapshots>
</repository>
</repositories>
<pluginRepositories>
<pluginRepository>
<id>spring-snapshots</id>
<name>Spring Snapshots</name>
<url>https://repo.spring.io/snapshot</url>
<snapshots>
<enabled>true</enabled>
</snapshots>
</pluginRepository>
<pluginRepository>
<id>spring-milestones</id>
<name>Spring Milestones</name>
<url>https://repo.spring.io/milestone</url>
<snapshots>
<enabled>false</enabled>
</snapshots>
</pluginRepository>
</pluginRepositories>
</project>
PersonJpaRepository.java-使用org.springframework.transaction.annotation.Transactional
package com.example.sandeepan.jpa;
import javax.persistence.EntityManager;
import javax.persistence.PersistenceContext;
import org.springframework.stereotype.Repository;
import com.example.sandeepan.entity.Person;
import org.springframework.transaction.annotation.Transactional;
@Repository
@Transactional
public class PersonJpaRepository {
//connect to the database
@PersistenceContext
EntityManager entityManager;
public Person findById(int id) {
return entityManager.find(Person.class, id);//JPA
}
}
Person.java
package com.example.sandeepan.entity;
import java.util.Date;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.Id;
@Entity
public class Person {
@Id
@GeneratedValue
private int id;
private String name;
private String location;
private Date birthDate;
public Person() {
}
public Person(int id, String name, String location, Date birthDate) {
super();
this.id = id;
this.name = name;
this.location = location;
this.birthDate = birthDate;
}
public Person(String name, String location, Date birthDate) {
super();
this.name = name;
this.location = location;
this.birthDate = birthDate;
}
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getLocation() {
return location;
}
public void setLocation(String location) {
this.location = location;
}
public Date getBirthDate() {
return birthDate;
}
public void setBirthDate(Date birthDate) {
this.birthDate = birthDate;
}
@Override
public String toString() {
return String.format("\nPerson [id=%s, name=%s, location=%s, birthDate=%s]", id, name, location, birthDate);
}
}
精确误差跟踪-
2019-12-21 22:17:41.939 INFO 24739 --- [ main] o.s.b.w.embedded.tomcat.TomcatWebServer : Tomcat started on port(s): 8080 (http) with context path ''
2019-12-21 22:17:41.943 INFO 24739 --- [ main] c.e.sandeepan.demo.JpaDemoApplication : Started JpaDemoApplication in 3.822 seconds (JVM running for 4.244)
2019-12-21 22:17:42.042 INFO 24739 --- [ main] ConditionEvaluationReportLoggingListener :
Error starting ApplicationContext. To display the conditions report re-run your application with 'debug' enabled.
2019-12-21 22:17:42.050 ERROR 24739 --- [ main] o.s.boot.SpringApplication : Application run failed
java.lang.IllegalStateException: Failed to execute CommandLineRunner
at org.springframework.boot.SpringApplication.callRunner(SpringApplication.java:784) [spring-boot-2.1.11.RELEASE.jar:2.1.11.RELEASE]
at org.springframework.boot.SpringApplication.callRunners(SpringApplication.java:765) [spring-boot-2.1.11.RELEASE.jar:2.1.11.RELEASE]
at org.springframework.boot.SpringApplication.run(SpringApplication.java:319) [spring-boot-2.1.11.RELEASE.jar:2.1.11.RELEASE]
at org.springframework.boot.SpringApplication.run(SpringApplication.java:1215) [spring-boot-2.1.11.RELEASE.jar:2.1.11.RELEASE]
at org.springframework.boot.SpringApplication.run(SpringApplication.java:1204) [spring-boot-2.1.11.RELEASE.jar:2.1.11.RELEASE]
at com.example.sandeepan.demo.JpaDemoApplication.main(JpaDemoApplication.java:25) [classes/:na]
Caused by: org.springframework.dao.InvalidDataAccessApiUsageException: Unable to locate persister: com.example.sandeepan.entity.Person; nested exception is java.lang.IllegalArgumentException: Unable to locate persister: com.example.sandeepan.entity.Person
at org.springframework.orm.jpa.EntityManagerFactoryUtils.convertJpaAccessExceptionIfPossible(EntityManagerFactoryUtils.java:374) ~[spring-orm-5.1.12.RELEASE.jar:5.1.12.RELEASE]
at org.springframework.orm.jpa.vendor.HibernateJpaDialect.translateExceptionIfPossible(HibernateJpaDialect.java:256) ~[spring-orm-5.1.12.RELEASE.jar:5.1.12.RELEASE]
at org.springframework.orm.jpa.AbstractEntityManagerFactoryBean.translateExceptionIfPossible(AbstractEntityManagerFactoryBean.java:528) ~[spring-orm-5.1.12.RELEASE.jar:5.1.12.RELEASE]
at org.springframework.dao.support.ChainedPersistenceExceptionTranslator.translateExceptionIfPossible(ChainedPersistenceExceptionTranslator.java:61) ~[spring-tx-5.1.12.RELEASE.jar:5.1.12.RELEASE]
at org.springframework.dao.support.DataAccessUtils.translateIfNecessary(DataAccessUtils.java:242) ~[spring-tx-5.1.12.RELEASE.jar:5.1.12.RELEASE]
at org.springframework.dao.support.PersistenceExceptionTranslationInterceptor.invoke(PersistenceExceptionTranslationInterceptor.java:153) ~[spring-tx-5.1.12.RELEASE.jar:5.1.12.RELEASE]
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:186) ~[spring-aop-5.1.12.RELEASE.jar:5.1.12.RELEASE]
at org.springframework.transaction.interceptor.TransactionInterceptor$$Lambda$463/921640293.proceedWithInvocation(Unknown Source) ~[na:na]
at org.springframework.transaction.interceptor.TransactionAspectSupport.invokeWithinTransaction(TransactionAspectSupport.java:295) ~[spring-tx-5.1.12.RELEASE.jar:5.1.12.RELEASE]
at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:98) ~[spring-tx-5.1.12.RELEASE.jar:5.1.12.RELEASE]
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:186) ~[spring-aop-5.1.12.RELEASE.jar:5.1.12.RELEASE]
at org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept(CglibAopProxy.java:689) ~[spring-aop-5.1.12.RELEASE.jar:5.1.12.RELEASE]
at com.example.sandeepan.jpa.PersonJpaRepository$$EnhancerBySpringCGLIB$$7da9173a.findById(<generated>) ~[classes/:na]
at com.example.sandeepan.demo.JpaDemoApplication.run(JpaDemoApplication.java:31) [classes/:na]
at org.springframework.boot.SpringApplication.callRunner(SpringApplication.java:781) [spring-boot-2.1.11.RELEASE.jar:2.1.11.RELEASE]
... 5 common frames omitted
Caused by: java.lang.IllegalArgumentException: Unable to locate persister: com.example.sandeepan.entity.Person
at org.hibernate.internal.SessionImpl.find(SessionImpl.java:3531) ~[hibernate-core-5.3.14.Final.jar:5.3.14.Final]
at org.hibernate.internal.SessionImpl.find(SessionImpl.java:3474) ~[hibernate-core-5.3.14.Final.jar:5.3.14.Final]
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[na:1.8.0_20]
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[na:1.8.0_20]
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[na:1.8.0_20]
at java.lang.reflect.Method.invoke(Method.java:483) ~[na:1.8.0_20]
at org.springframework.orm.jpa.SharedEntityManagerCreator$SharedEntityManagerInvocationHandler.invoke(SharedEntityManagerCreator.java:310) ~[spring-orm-5.1.12.RELEASE.jar:5.1.12.RELEASE]
at com.sun.proxy.$Proxy74.find(Unknown Source) ~[na:na]
at com.example.sandeepan.jpa.PersonJpaRepository.findById(PersonJpaRepository.java:20) ~[classes/:na]
at com.example.sandeepan.jpa.PersonJpaRepository$$FastClassBySpringCGLIB$$a023c4d7.invoke(<generated>) ~[classes/:na]
at org.springframework.cglib.proxy.MethodProxy.invoke(MethodProxy.java:218) ~[spring-core-5.1.12.RELEASE.jar:5.1.12.RELEASE]
at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.invokeJoinpoint(CglibAopProxy.java:750) ~[spring-aop-5.1.12.RELEASE.jar:5.1.12.RELEASE]
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:163) ~[spring-aop-5.1.12.RELEASE.jar:5.1.12.RELEASE]
at org.springframework.dao.support.PersistenceExceptionTranslationInterceptor.invoke(PersistenceExceptionTranslationInterceptor.java:139) ~[spring-tx-5.1.12.RELEASE.jar:5.1.12.RELEASE]
... 14 common frames omitted
Caused by: org.hibernate.UnknownEntityTypeException: Unable to locate persister: com.example.sandeepan.entity.Person
at org.hibernate.metamodel.internal.MetamodelImpl.locateEntityPersister(MetamodelImpl.java:687) ~[hibernate-core-5.3.14.Final.jar:5.3.14.Final]
at org.hibernate.internal.SessionImpl.locateEntityPersister(SessionImpl.java:3045) ~[hibernate-core-5.3.14.Final.jar:5.3.14.Final]
at org.hibernate.internal.SessionImpl.access$1900(SessionImpl.java:208) ~[hibernate-core-5.3.14.Final.jar:5.3.14.Final]
at org.hibernate.internal.SessionImpl$IdentifierLoadAccessImpl.<init>(SessionImpl.java:2796) ~[hibernate-core-5.3.14.Final.jar:5.3.14.Final]
at org.hibernate.internal.SessionImpl$IdentifierLoadAccessImpl.<init>(SessionImpl.java:2782) ~[hibernate-core-5.3.14.Final.jar:5.3.14.Final]
at org.hibernate.internal.SessionImpl.byId(SessionImpl.java:1230) ~[hibernate-core-5.3.14.Final.jar:5.3.14.Final]
at org.hibernate.internal.SessionImpl.find(SessionImpl.java:3499) ~[hibernate-core-5.3.14.Final.jar:5.3.14.Final]
... 27 common frames omitted
2019-12-21 22:17:41.939信息24739---[main]o.s.b.w.embedded.tomcat.TomcatWebServer:tomcat在端口8080(http)上启动,上下文路径为“”
2019-12-21 22:17:41.943信息24739---[main]c.e.sandeepan.demo.JpaDemoApplication:在3.822秒内启动了JpaDemoApplication(JVM运行了4.244秒)
2019-12-21 22:17:42.042信息24739---[main]条件评估报告日志监听器:
启动ApplicationContext时出错。要显示条件报告,请在启用“调试”的情况下重新运行应用程序。
2019-12-21 22:17:42.050错误24739---[main]o.s.boot.SpringApplication:应用程序运行失败
java.lang.IllegalStateException:未能执行CommandLineRunner
在org.springframework.boot.SpringApplication.callRunner(SpringApplication.java:784)[spring-boot-2.1.11.RELEASE.jar:2.1.11.RELEASE]
位于org.springframework.boot.SpringApplication.callRunners(SpringApplication.java:765)[spring-boot-2.1.11.RELEASE.jar:2.1.11.RELEASE]
在org.springframework.boot.SpringApplication.run(SpringApplication.java:319)[spring-boot-2.1.11.RELEASE.jar:2.1.11.RELEASE]
在org.springframework.boot.SpringApplication.run(SpringApplication.java:1215)[spring-boot-2.1.11.RELEASE.jar:2.1.11.RELEASE]
在org.springframework.boot.SpringApplication.run(SpringApplication.java:1204)[spring-boot-2.1.11.RELEASE.jar:2.1.11.RELEASE]
在com.example.sandepan.demo.JpaDemoApplication.main(JpaDemoApplication.java:25)[classes/:na]
原因:org.springframework.dao.InvalidDataAccessApiUsageException:找不到persister:com.example.sandepan.entity.Person;嵌套异常为java.lang.IllegalArgumentException:无法找到persister:com.example.sandepan.entity.Person
在org.springframework.orm.jpa.EntityManagerFactoryUtils.ConvertJPAAccessException如果可能(EntityManagerFactoryUtils.java:374)~[spring-orm-5.1.12.RELEASE.jar:5.1.12.RELEASE]
在org.springframework.orm.jpa.vendor.HibernateJpaDialect.translateException如果可能(HibernateJpaDialect.java:256)~[spring-orm-5.1.12.RELEASE.jar:5.1.12.RELEASE]
在org.springframework.orm.jpa.AbstractEntityManagerFactoryBean.TranslateExceptionIfEnabled(AbstractEntityManagerFactoryBean.java:528)~[spring-orm-5.1.12.RELEASE.jar:5.1.12.RELEASE]
在org.springframework.dao.support.ChainedPersistenceExceptionTranslator.translateExceptionIfmable(ChainedPersistenceExceptionTranslator.java:61)~[spring-tx-5.1.12.RELEASE.jar:5.1.12.RELEASE]
在org.springframework.dao.support.DataAccessUtils.translateIfNecessary(DataAccessUtils.java:242)~[spring-tx-5.1.12.RELEASE.jar:5.1.12.RELEASE]
在org.springframework.dao.support.PersistenceExceptionTranslationInterceptor.invoke(PersistenceExceptionTranslationInterceptor.java:153)~[spring-tx-5.1.12.RELEASE.jar:5.1.12.RELEASE]
在org.springframework.aop.framework.ReflectiveMethodInvocation.procedue(ReflectiveMethodInvocation.java:186)~[spring-aop-5.1.12.RELEASE.jar:5.1.12.RELEASE]
在org.springframework.transaction.interceptor.TransactionInterceptor$$Lambda$463/921640293.proceedWithInvocation(未知源)~[na:na]
在org.springframework.transaction.interceptor.TransactionSpectSupport.invokeWithinTransaction(TransactionSpectSupport.java:295)~[spring-tx-5.1.12.RELEASE.jar:5.1.12.RELEASE]
在org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:98)~[spring-tx-5.1.12.RELEASE.jar:5.1.12.RELEASE]
在org.springframework.aop.framework.ReflectiveMethodInvocation.procedue(ReflectiveMethodInvocation.java:186)~[spring-aop-5.1.12.RELEASE.jar:5.1.12.RELEASE]
在org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept(CglibAopProxy.java:689)~[spring-aop-5.1.12.RELEASE.jar:5.1.12.RELEASE]
在com.example.sandepan.jpa.PersonJpaRepository$$EnhancerBySpringCGLIB$$7da9173a.findById()~[classes/:na]
在com.example.sandepan.demo.JpaDemoApplication.run(JpaDemoApplication.java:31)[classes/:na]
在org.springframework.boot.SpringApplication.callRunner(SpringApplication.java:781)[spring-boot-2.1.11.RELEASE.jar:2.1.11.RELEASE]
... 省略了5个公共框架
原因:java.lang.IllegalArgumentException:找不到persister:com.example.sandepan.entity.Person
在org.hibernate.internal.SessionImpl.find(SessionImpl.java:3531)~[hibernate-core-5.3.14.Final.jar:5.3.14.Final]
在org.hibernate.internal.SessionImpl.find(SessionImpl.java:3474)~[hibernate-core-5.3.14.Final.jar:5.3.14.Final]
在sun.reflect.NativeMethodAccessorImpl.invoke0(本机方法)~[na:1.8.0\u 20]
在sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)~[na:1.8.0\u 20]
在sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)~[na:1.8.0\u 20]
在java.lang.reflect.Method.invoke(Method.java:483)~[na:1.8.0\u 20]
在org.springframework.orm.jpa.SharedEntityManagerCreator$SharedEntityManagerInvocationHandler.invoke(SharedEntityManagerCreator.java:310)~[spring-orm-5.1.12.RELEASE.jar:5.1.12.RELEASE]
在com.sun.proxy.$Proxy74.find(未知源)~[na:na]
在com.example.sandepan.jpa.PersonJpaRepository.findById(PersonJpaRepository.java:20)~[classes/:na]
在com.example.sandepan.jpa.PersonJpaRepository$$FastClassBySpringCGLIB$$a023c4d7.invoke()~[classes/:na]
在org.springframework.cglib.proxy.MethodProxy.invoke(MethodProxy.java:218)~[spring-core-5.1.12.RELEASE.jar:5.1.12.RELEASE]
2019-12-21 22:17:41.939 INFO 24739 --- [ main] o.s.b.w.embedded.tomcat.TomcatWebServer : Tomcat started on port(s): 8080 (http) with context path ''
2019-12-21 22:17:41.943 INFO 24739 --- [ main] c.e.sandeepan.demo.JpaDemoApplication : Started JpaDemoApplication in 3.822 seconds (JVM running for 4.244)
2019-12-21 22:17:42.042 INFO 24739 --- [ main] ConditionEvaluationReportLoggingListener :
Error starting ApplicationContext. To display the conditions report re-run your application with 'debug' enabled.
2019-12-21 22:17:42.050 ERROR 24739 --- [ main] o.s.boot.SpringApplication : Application run failed
java.lang.IllegalStateException: Failed to execute CommandLineRunner
at org.springframework.boot.SpringApplication.callRunner(SpringApplication.java:784) [spring-boot-2.1.11.RELEASE.jar:2.1.11.RELEASE]
at org.springframework.boot.SpringApplication.callRunners(SpringApplication.java:765) [spring-boot-2.1.11.RELEASE.jar:2.1.11.RELEASE]
at org.springframework.boot.SpringApplication.run(SpringApplication.java:319) [spring-boot-2.1.11.RELEASE.jar:2.1.11.RELEASE]
at org.springframework.boot.SpringApplication.run(SpringApplication.java:1215) [spring-boot-2.1.11.RELEASE.jar:2.1.11.RELEASE]
at org.springframework.boot.SpringApplication.run(SpringApplication.java:1204) [spring-boot-2.1.11.RELEASE.jar:2.1.11.RELEASE]
at com.example.sandeepan.demo.JpaDemoApplication.main(JpaDemoApplication.java:25) [classes/:na]
Caused by: org.springframework.dao.InvalidDataAccessApiUsageException: Unable to locate persister: com.example.sandeepan.entity.Person; nested exception is java.lang.IllegalArgumentException: Unable to locate persister: com.example.sandeepan.entity.Person
at org.springframework.orm.jpa.EntityManagerFactoryUtils.convertJpaAccessExceptionIfPossible(EntityManagerFactoryUtils.java:374) ~[spring-orm-5.1.12.RELEASE.jar:5.1.12.RELEASE]
at org.springframework.orm.jpa.vendor.HibernateJpaDialect.translateExceptionIfPossible(HibernateJpaDialect.java:256) ~[spring-orm-5.1.12.RELEASE.jar:5.1.12.RELEASE]
at org.springframework.orm.jpa.AbstractEntityManagerFactoryBean.translateExceptionIfPossible(AbstractEntityManagerFactoryBean.java:528) ~[spring-orm-5.1.12.RELEASE.jar:5.1.12.RELEASE]
at org.springframework.dao.support.ChainedPersistenceExceptionTranslator.translateExceptionIfPossible(ChainedPersistenceExceptionTranslator.java:61) ~[spring-tx-5.1.12.RELEASE.jar:5.1.12.RELEASE]
at org.springframework.dao.support.DataAccessUtils.translateIfNecessary(DataAccessUtils.java:242) ~[spring-tx-5.1.12.RELEASE.jar:5.1.12.RELEASE]
at org.springframework.dao.support.PersistenceExceptionTranslationInterceptor.invoke(PersistenceExceptionTranslationInterceptor.java:153) ~[spring-tx-5.1.12.RELEASE.jar:5.1.12.RELEASE]
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:186) ~[spring-aop-5.1.12.RELEASE.jar:5.1.12.RELEASE]
at org.springframework.transaction.interceptor.TransactionInterceptor$$Lambda$463/921640293.proceedWithInvocation(Unknown Source) ~[na:na]
at org.springframework.transaction.interceptor.TransactionAspectSupport.invokeWithinTransaction(TransactionAspectSupport.java:295) ~[spring-tx-5.1.12.RELEASE.jar:5.1.12.RELEASE]
at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:98) ~[spring-tx-5.1.12.RELEASE.jar:5.1.12.RELEASE]
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:186) ~[spring-aop-5.1.12.RELEASE.jar:5.1.12.RELEASE]
at org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept(CglibAopProxy.java:689) ~[spring-aop-5.1.12.RELEASE.jar:5.1.12.RELEASE]
at com.example.sandeepan.jpa.PersonJpaRepository$$EnhancerBySpringCGLIB$$7da9173a.findById(<generated>) ~[classes/:na]
at com.example.sandeepan.demo.JpaDemoApplication.run(JpaDemoApplication.java:31) [classes/:na]
at org.springframework.boot.SpringApplication.callRunner(SpringApplication.java:781) [spring-boot-2.1.11.RELEASE.jar:2.1.11.RELEASE]
... 5 common frames omitted
Caused by: java.lang.IllegalArgumentException: Unable to locate persister: com.example.sandeepan.entity.Person
at org.hibernate.internal.SessionImpl.find(SessionImpl.java:3531) ~[hibernate-core-5.3.14.Final.jar:5.3.14.Final]
at org.hibernate.internal.SessionImpl.find(SessionImpl.java:3474) ~[hibernate-core-5.3.14.Final.jar:5.3.14.Final]
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[na:1.8.0_20]
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[na:1.8.0_20]
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[na:1.8.0_20]
at java.lang.reflect.Method.invoke(Method.java:483) ~[na:1.8.0_20]
at org.springframework.orm.jpa.SharedEntityManagerCreator$SharedEntityManagerInvocationHandler.invoke(SharedEntityManagerCreator.java:310) ~[spring-orm-5.1.12.RELEASE.jar:5.1.12.RELEASE]
at com.sun.proxy.$Proxy74.find(Unknown Source) ~[na:na]
at com.example.sandeepan.jpa.PersonJpaRepository.findById(PersonJpaRepository.java:20) ~[classes/:na]
at com.example.sandeepan.jpa.PersonJpaRepository$$FastClassBySpringCGLIB$$a023c4d7.invoke(<generated>) ~[classes/:na]
at org.springframework.cglib.proxy.MethodProxy.invoke(MethodProxy.java:218) ~[spring-core-5.1.12.RELEASE.jar:5.1.12.RELEASE]
at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.invokeJoinpoint(CglibAopProxy.java:750) ~[spring-aop-5.1.12.RELEASE.jar:5.1.12.RELEASE]
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:163) ~[spring-aop-5.1.12.RELEASE.jar:5.1.12.RELEASE]
at org.springframework.dao.support.PersistenceExceptionTranslationInterceptor.invoke(PersistenceExceptionTranslationInterceptor.java:139) ~[spring-tx-5.1.12.RELEASE.jar:5.1.12.RELEASE]
... 14 common frames omitted
Caused by: org.hibernate.UnknownEntityTypeException: Unable to locate persister: com.example.sandeepan.entity.Person
at org.hibernate.metamodel.internal.MetamodelImpl.locateEntityPersister(MetamodelImpl.java:687) ~[hibernate-core-5.3.14.Final.jar:5.3.14.Final]
at org.hibernate.internal.SessionImpl.locateEntityPersister(SessionImpl.java:3045) ~[hibernate-core-5.3.14.Final.jar:5.3.14.Final]
at org.hibernate.internal.SessionImpl.access$1900(SessionImpl.java:208) ~[hibernate-core-5.3.14.Final.jar:5.3.14.Final]
at org.hibernate.internal.SessionImpl$IdentifierLoadAccessImpl.<init>(SessionImpl.java:2796) ~[hibernate-core-5.3.14.Final.jar:5.3.14.Final]
at org.hibernate.internal.SessionImpl$IdentifierLoadAccessImpl.<init>(SessionImpl.java:2782) ~[hibernate-core-5.3.14.Final.jar:5.3.14.Final]
at org.hibernate.internal.SessionImpl.byId(SessionImpl.java:1230) ~[hibernate-core-5.3.14.Final.jar:5.3.14.Final]
at org.hibernate.internal.SessionImpl.find(SessionImpl.java:3499) ~[hibernate-core-5.3.14.Final.jar:5.3.14.Final]
... 27 common frames omitted