javax.ejb.EJBException: javax.ejb.CreateException: инициализация не удалась для Singleton EntityManagerFactory

При попытке использовать мой Entity Manager в любом из моих компонентов я получаю следующее сообщение об ошибке:

javax.ejb.EJBException: javax.ejb.CreateException: не удалось инициализировать для Singleton EntityManagerFactory `

Другая часть ошибки говорит:

Отсутствует поставщик сохраняемости для EntityManager с именем Assignment3JPAProvider

persistence.xml:

<?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="Assignment3JPAProvider">


 <provider>org.hibernate.jpa.HibernatePersistenceProvider</provider>
    <class>prog3060.entities.Age</class>
    <class>prog3060.entities.AgeGroup</class>
    <class>prog3060.entities.CensusYear</class>
    <class>prog3060.entities.GeographicArea</class>
    <class>prog3060.entities.Household</class>
    <class>prog3060.entities.HouseholdEarners</class>
    <class>prog3060.entities.HouseholdsByAgeRange</class>
    <class>prog3060.entities.HouseholdSize</class>
    <class>prog3060.entities.HouseholdType</class>
    <class>prog3060.entities.TotalIncome</class>
    <properties>
        <property name="hibernate.connection.driver_class" value="org.apache.derby.jdbc.ClientDriver"/>
        <property name="hibernate.connection.url" value="jdbc:derby://localhost:1527/CensusDB"/>
        <property name="hibernate.default_schema" value="APP"/>
        <property name="hibernate.connection.username" value="user"/>
        <property name="hibernate.connection.password" value="123"/>
        <property name="hibernate.connection.pool_size" value="10"/>
        <property name="hibernate.show_sql" value="true"/>
        <property name="hibernate.dialect" value="org.hibernate.dialect.DerbyTenSevenDialect"/>
    </properties>
</persistence-unit>

EntityManagerFactory:

package prog3060.beans;

import javax.annotation.PostConstruct;
import javax.annotation.PreDestroy;
import javax.ejb.LocalBean;
import javax.ejb.Singleton;
import javax.ejb.Stateless;
import javax.persistence.EntityManager;
import javax.persistence.Persistence;

@Singleton
@LocalBean
public class EntityManagerFactory implements EntityManagerFactoryLocal {

    javax.persistence.EntityManagerFactory emf;


    @Override
    public EntityManager getEntityManager() {

        return emf.createEntityManager();
    }

    @PostConstruct
    void initialize() {
        emf = Persistence.createEntityManagerFactory("Assignment3JPAProvider");
    }

    @PreDestroy
    void destroy() {
        emf.close();
    }



}

это использует glassfish5 и jpa. В чем причина этого сбоя? это происходит всякий раз, когда я пытаюсь использовать менеджер сущностей.

0 ответов

Другие вопросы по тегам