报错javax.persistence.PersistenceException: No Persistence provider for EntityManager named itcast
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了报错javax.persistence.PersistenceException: No Persistence provider for EntityManager named itcast相关的知识,希望对你有一定的参考价值。
我的persistence.xml文件如下:
<?xml version="1.0" encoding="UTF-8" ?>
<persistence xmlns="http://java.sun.com/xml/ns/persistence"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/persistence
http://java.sun.com/xml/ns/persistence/persistence_1_0.xsd" version="1.0">
<persistence-unit name="itcast" transaction-type="RESOURCE_LOCAL">
<provider>org.hibernate.ejb.HibernatePersistence</provider>
<properties>
<property name="hibernate.dialect" value="org.hibernate.dialect.SQLServerDialect" />
<property name="hibernate.hbm2ddl.auto" value="update" />
<property name="hibernate.connection.driver_class" value="com.microsoft.sqlserver.jdbc.SQLServerDriver" />
<property name="hibernate.connection.username" value="sa" />
<property name="hibernate.connection.password" value="wyf" />
<property name="hibernate.connection.url" value="jdbc:sqlserver://localhost:1433/itcast?useUnicode=true&characterEncoding=UTF-8" />
<property name="hibernate.format_sql" value="true"/>
</properties>
</persistence-unit>
</persistence>
package cn.itcast.bean;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.Id;
@Entity
public class Person
//@Id
private Integer id;
private String name;
public Person()
public Person(String name) //为了数据方便,添加一个构造函数
this.name = name;
@Id
@GeneratedValue
public Integer getId()
return id;
public void setId(Integer id)
this.id = id;
public String getName()
return name;
public void setName(String name)
this.name = name;
package junit.test;
import javax.persistence.EntityManager;
import javax.persistence.EntityManagerFactory;
import javax.persistence.Persistence;
import org.junit.BeforeClass;
import org.junit.Test;
import cn.itcast.bean.*;
public class PersonTest
@BeforeClass
public static void setUpBeforeClass() throws Exception
@Test public void save()
EntityManagerFactory emf=Persistence.createEntityManagerFactory("itcast");
EntityManager em=emf.createEntityManager();
另附上我的加包图片
Error parsing XML (line28 : column 6): The processing instruction target matching "[xX][mM][lL]" is not allowed.
JRebel启动报错
参考技术A 项目概况:SpringMVC新接手的项目,安装JRebel插件(JRebel for IntelliJ v2019.1.1)后,启动报错,在此之前是可以正常启动项目。
报错核心信息: Exception in thread "Timer-RefreshDataTask" java.lang.IllegalStateException: BeanFactory not initialized or already closed - call 'refresh' before accessing beans via the ApplicationContext
报错详细信息:
五月 10, 2019 10:37:36 上午 org.apache.catalina.loader.WebappClassLoader clearReferencesJdbc
严重: The web application [/edi-web] registered the JDBC driver [com.alibaba.druid.proxy.DruidDriver] but failed to unregister it when the web application was stopped. To prevent a memory leak, the JDBC Driver has been forcibly unregistered.
五月 10, 2019 10:37:36 上午 org.apache.catalina.loader.WebappClassLoader clearReferencesJdbc
严重: The web application [/edi-web] registered the JDBC driver [com.mysql.jdbc.Driver] but failed to unregister it when the web application was stopped. To prevent a memory leak, the JDBC Driver has been forcibly unregistered.
五月 10, 2019 10:37:36 上午 org.apache.catalina.loader.WebappClassLoader clearReferencesJdbc
严重: The web application [/edi-web] registered the JDBC driver [oracle.jdbc.driver.OracleDriver] but failed to unregister it when the web application was stopped. To prevent a memory leak, the JDBC Driver has been forcibly unregistered.
五月 10, 2019 10:37:36 上午 org.apache.catalina.loader.WebappClassLoader checkThreadLocalMapForLeaks
严重: The web application [/edi-web] created a ThreadLocal with key of type [net.sf.json.AbstractJSON.CycleSet] (value [net.sf.json.AbstractJSON$CycleSet@52abeb56]) and a value of type [java.lang.ref.SoftReference] (value [java.lang.ref.SoftReference@73639524]) but failed to remove it when the web application was stopped. Threads are going to be renewed over time to try and avoid a probable memory leak.
[2019-05-10 10:37:36,507] Artifact xbwl-edi-web:war exploded: Error during artifact deployment. See server log for details.
log4j:WARN No appenders could be found for logger (org.springframework.scheduling.quartz.SchedulerFactoryBean).
log4j:WARN Please initialize the log4j system properly.
log4j:WARN See http://logging.apache.org/log4j/1.2/faq.html#noconfig for more info.
五月 10, 2019 10:37:45 上午 org.apache.catalina.loader.WebappClassLoader loadClass
信息: Illegal access: this web application instance has been stopped already. Could not load org.springframework.core.NestedExceptionUtils. The eventual following stack trace is caused by an error thrown for debugging purposes as well as to attempt to terminate the thread which caused the illegal access, and has no functional impact.
java.lang.IllegalStateException
at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1612)
at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1571)
at org.springframework.core.NestedRuntimeException.<clinit>(NestedRuntimeException.java:45)
at org.springframework.scheduling.quartz.SchedulerFactoryBean$1.run(SchedulerFactoryBean.java:673)
Exception in thread "Quartz Scheduler [SYSSTATIC_SCHEDULE]" java.lang.NoClassDefFoundError: org/springframework/core/NestedExceptionUtils
at org.springframework.core.NestedRuntimeException.<clinit>(NestedRuntimeException.java:45)
at org.springframework.scheduling.quartz.SchedulerFactoryBean$1.run(SchedulerFactoryBean.java:673)
Caused by: java.lang.ClassNotFoundException: org.springframework.core.NestedExceptionUtils
at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1720)
at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1571)
... 2 more
Exception in thread "Timer-RefreshDataTask" java.lang.IllegalStateException: BeanFactory not initialized or already closed - call 'refresh' before accessing beans via the ApplicationContext
at org.springframework.context.support.AbstractRefreshableApplicationContext.getBeanFactory(AbstractRefreshableApplicationContext.java:170)
at org.springframework.context.support.AbstractApplicationContext.getBean(AbstractApplicationContext.java:985)
at com.xbwl.core.cache.CacheManager.<init>(CacheManager.java:20)
at com.xbwl.core.cache.CacheManager.getInstance(CacheManager.java:54)
at com.xbwl.core.mq.rabbitMq.service.impl.RabbitMqServiceImpl$RefreshDataTask.run(RabbitMqServiceImpl.java:107)
at java.util.TimerThread.mainLoop(Timer.java:555)
at java.util.TimerThread.run(Timer.java:505)
Exception in thread "Timer-RefreshDataTask" java.lang.IllegalStateException: BeanFactory not initialized or already closed - call 'refresh' before accessing beans via the ApplicationContext
at org.springframework.context.support.AbstractRefreshableApplicationContext.getBeanFactory(AbstractRefreshableApplicationContext.java:170)
at org.springframework.context.support.AbstractApplicationContext.getBean(AbstractApplicationContext.java:985)
at com.xbwl.core.cache.CacheManager.<init>(CacheManager.java:20)
at com.xbwl.core.cache.CacheManager.getInstance(CacheManager.java:54)
at com.xbwl.core.mq.MqInterceptor.initMqCache(MqInterceptor.java:70)
at com.xbwl.core.mq.MqInterceptor.access$000(MqInterceptor.java:26)
at com.xbwl.core.mq.MqInterceptor$RefreshDataTask.run(MqInterceptor.java:64)
at java.util.TimerThread.mainLoop(Timer.java:555)
at java.util.TimerThread.run(Timer.java:505)
Exception in thread "Timer-RefreshDataTask" java.lang.IllegalStateException: BeanFactory not initialized or already closed - call 'refresh' before accessing beans via the ApplicationContext
at org.springframework.context.support.AbstractRefreshableApplicationContext.getBeanFactory(AbstractRefreshableApplicationContext.java:170)
at org.springframework.context.support.AbstractApplicationContext.getBean(AbstractApplicationContext.java:985)
at com.xbwl.core.cache.CacheManager.<init>(CacheManager.java:20)
at com.xbwl.core.cache.CacheManager.getInstance(CacheManager.java:54)
at com.xbwl.core.service.impl.BaiduWebApiServiceImpl$RefreshDataTask.run(BaiduWebApiServiceImpl.java:41)
at java.util.TimerThread.mainLoop(Timer.java:555)
at java.util.TimerThread.run(Timer.java:505)
暂未解决,待续
以上是关于报错javax.persistence.PersistenceException: No Persistence provider for EntityManager named itcast的主要内容,如果未能解决你的问题,请参考以下文章