javax.persistence.PersistenceException:没有名为Eclipselink_JPA的EntityManager的持久性提供程序

javax.persistence.PersistenceException:没有名为Eclipselink_JPA的EntityManager的持久性提供程序,jpa,eclipselink,Jpa,Eclipselink,我是JPA的新手,对此我很迷茫 我在netbeans中创建了一个企业项目来进行一些测试。使用向导创建了此持久性单元。我添加了一个正常工作的JNDI连接,并且已经过测试: <?xml version="1.0" encoding="UTF-8"?> <persistence version="2.1" xmlns="http://xmlns.jcp.org/xml/ns/persistence" xmlns:xsi="http://www.w3.org/2001/XMLSchem

我是JPA的新手,对此我很迷茫

我在netbeans中创建了一个企业项目来进行一些测试。使用向导创建了此持久性单元。我添加了一个正常工作的JNDI连接,并且已经过测试:

<?xml version="1.0" encoding="UTF-8"?>
<persistence version="2.1" xmlns="http://xmlns.jcp.org/xml/ns/persistence" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/persistence http://xmlns.jcp.org/xml/ns/persistence/persistence_2_1.xsd">
  <persistence-unit name="persistencia" transaction-type="JTA">
    <jta-data-source>jdbc/nuevaConexion</jta-data-source>
    <exclude-unlisted-classes>false</exclude-unlisted-classes>
    <properties>
      <property name="javax.persistence.schema-generation.database.action" value="create"/>
    </properties>
  </persistence-unit>
</persistence>
然后,尝试让服务CreateEntity1进行尝试,并尝试通过调用它在DB上创建新元素:

public class CreateEntity1 {

   public static void main( String[ ] args ) {

      EntityManagerFactory emfactory = Persistence.createEntityManagerFactory( "Eclipselink_JPA" );      
      EntityManager entitymanager = emfactory.createEntityManager( );
      entitymanager.getTransaction( ).begin( );

      Entity1 ent = new Entity1( ); 
      ent.setId(1);
      ent.setNombre("Mi entidad");
      ent.setNumero(123);

      entitymanager.persist( ent );
      entitymanager.getTransaction( ).commit( );
      entitymanager.close( );
      emfactory.close( );
   }
}
。。。但它不起作用。我得到以下错误:

线程“main”javax.persistence.PersistenceException中的异常:否 EntityManager的持久性提供程序,名为Eclipselink_JPA,位于 persistence.persistence.createEntityManagerFactory(persistence.java:85) 在 persistence.persistence.createEntityManagerFactory(persistence.java:54) 位于service.CreateEntity1.main(CreateEntity1.java:22) C:\Users\hp\AppData\Local\NetBeans\Cache\8.1\executor snippets\run.xml:53: Java返回:1生成失败(总时间:0秒)

我做错了什么

编辑:我将持久性提供程序的名称改为好的,但现在我遇到了一系列严重的错误

编辑2:将所有内容更改为休眠类型。仍然得到一个巨大的错误:

线程“main”本地异常堆栈中的异常:异常 [EclipseLink-30009](Eclipse持久性服务)- 2.6.1.v20150605-31e8258):org.eclipse.persistence.exceptions.PersistenceUnitLoadingException 异常描述:尝试加载时引发异常 url处的持久化单元: 文件:/C:/Users/hp/Documents/NetBeansProjects/PruebasJ2EE/PruebasJ2EE ejb/build/classes/ 内部异常:异常[EclipseLink-30004](Eclipse持久性) 服务-2.6.1.v20150605-31e8258): org.eclipse.persistence.exceptions.PersistenceUnitLoadingException 异常描述:处理时引发异常 URL中的persistence.xml: 文件:/C:/Users/hp/Documents/NetBeansProjects/PruebasJ2EE/PruebasJ2EE ejb/build/classes/ 内部例外情况:(1)程序指令 请在此处输入“[xX][mM][lL]”不允许 org.eclipse.persistence.exceptions.PersistenceUnitLoadingException.exceptionLoadingFromUrl(PersistenceUnitLoadingException.java:100) 在 org.eclipse.persistence.internal.jpa.deployment.PersistenceUnitProcessor.processPersistenceArchive(PersistenceUnitProcessor.java:616) 在 org.eclipse.persistence.internal.jpa.deployment.PersistenceUnitProcessor.getPersistenceUnits(PersistenceUnitProcessor.java:500) 在 org.eclipse.persistence.internal.jpa.deployment.jpainInitializer.findpersistenceUninitInfo(jpainInitializer.java:178) 在 org.eclipse.persistence.internal.jpa.deployment.jpainInitializer.findpersistenceUninitInfo(jpainInitializer.java:160) 在 org.eclipse.persistence.internal.jpa.deployment.jpainInitializer.findPersistenceUnitInfo(jpainInitializer.java:141) 在 org.eclipse.persistence.jpa.PersistenceProvider.createEntityManagerFactory(PersistenceProvider.java:188) 在 persistence.persistence.createEntityManagerFactory(persistence.java:79) 在 persistence.persistence.createEntityManagerFactory(persistence.java:54) 在service.CreateEntity1.main(CreateEntity1.java:22)处,由以下原因引起: 异常[EclipseLink-30004](Eclipse持久性服务)- 2.6.1.v20150605-31e8258):org.eclipse.persistence.exceptions.PersistenceUnitLoadingException 异常描述:处理时引发异常 URL中的persistence.xml: 文件:/C:/Users/hp/Documents/NetBeansProjects/PruebasJ2EE/PruebasJ2EE ejb/build/classes/ 内部例外情况:(1)程序指令 请在此处输入“[xX][mM][lL]”不允许 org.eclipse.persistence.exceptions.PersistenceUnitLoadingException.exceptionProcessingPersistenceXML(PersistenceUnitLoadingException.java:118) 在 org.eclipse.persistence.internal.jpa.deployment.PersistenceUnitProcessor.processPersistenceXML(PersistenceUnitProcessor.java:665) 在 org.eclipse.persistence.internal.jpa.deployment.PersistenceUnitProcessor.processPersistenceArchive(PersistenceUnitProcessor.java:614) ... 8更多的原因是:(1)教育目的地 不允许在以下位置使用“[xX][mM][lL]”的过程: org.eclipse.persistence.internal.jpa.deployment.xml.parser.XMLExceptionHandler.error(XMLExceptionHandler.java:28) 在 org.eclipse.persistence.internal.jpa.deployment.xml.parser.XMLExceptionHandler.fatalError(XMLExceptionHandler.java:34) 在 com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.fatalError(ErrorHandlerWrapper.java:180) 在 com.sun.org.apache.xerces.internal.impl.XMLErrorReporter.reportError(XMLErrorReporter.java:441) 在 com.sun.org.apache.xerces.internal.impl.XMLErrorReporter.reportError(XMLErrorReporter.java:368) 在 com.sun.org.apache.xerces.internal.impl.XMLScanner.reportFatalError(XMLScanner.java:1436) 在 com.sun.org.apache.xerces.internal.impl.XMLScanner.scanPIData(XMLScanner.java:723) 在 com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanPIData(XMLDocumentFragmentScannerImpl.java:1018) 在 com.sun.org.apache.xerces.internal.impl.xmlcanner.scanPI(xmlcanner.java:691) 在 com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl$PrologDriver.next(XMLDocumentScannerImpl.java:912) 在 com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(XMLDocumentScannerImpl.java:606) 在 com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.next(XMLNSDocumentScannerImpl.java:117) 在 com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLDocumentFragmentScannerImpl.java:510) 在 com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:848) 在 com.sun.org.apache.xerces.internal.parsers.xml11配置
public class CreateEntity1 {

   public static void main( String[ ] args ) {

      EntityManagerFactory emfactory = Persistence.createEntityManagerFactory( "Eclipselink_JPA" );      
      EntityManager entitymanager = emfactory.createEntityManager( );
      entitymanager.getTransaction( ).begin( );

      Entity1 ent = new Entity1( ); 
      ent.setId(1);
      ent.setNombre("Mi entidad");
      ent.setNumero(123);

      entitymanager.persist( ent );
      entitymanager.getTransaction( ).commit( );
      entitymanager.close( );
      emfactory.close( );
   }
}
  <?xml version="1.0" encoding="UTF-8"?>
   <persistence version="2.1" xmlns="http://xmlns.jcp.org/xml/ns/persistence"   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"   xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/persistence   http://xmlns.jcp.org/xml/ns/persistence/persistence_2_1.xsd">
   <persistence-unit name="persistencia" transaction-type="JTA">
   <provider>org.hibernate.ejb.HibernatePersistence</provider>
   ...