Solucionado (ver solução)
Solucionado
(ver solução)
9
respostas

Dúvida no Ex. 1 da Aula 1 - Gerenciando o ciclo de vida de um projeto Java

Olá,

Gostaria de saber onde fica o persistence.xml dentro de um projeto maven.

Pois coloquei a pasta META-INF dentro da pasta src, mas mesmo assim ocorre erro de persistencia

9 respostas

Oi Renato, tudo bem?

Põe a pasta META-INF dentro de src/main/resources.

Testa e vê se funciona.

Abraço!

Olá Lucas eu fiz isso mas ele insiste em dar esse erro:

Caused by: javax.persistence.PersistenceException: No Persistence provider for EntityManager named bcotst-unit

Erro:

Exception in thread "main" java.lang.ExceptionInInitializerError
    at br.com.paulistano.dao.CsvDao.buscaPeloIdConta(CsvDao.java:38)
    at br.com.paulistano.dao.CsvDao.inserirDados(CsvDao.java:18)
    at br.com.paulistano.principal.TesteJPA.main(TesteJPA.java:17)
Caused by: javax.persistence.PersistenceException: No Persistence provider for EntityManager named bcotst-unit
    at javax.persistence.Persistence.createEntityManagerFactory(Persistence.java:61)
    at javax.persistence.Persistence.createEntityManagerFactory(Persistence.java:39)
    at br.com.paulistano.util.JPAUtil.<clinit>(JPAUtil.java:10)
    ... 3 more

Segue abaixo a configuração do persistence

Arquivo Persistence

<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_2_0.xsd"
    version="2.0">    
    <persistence-unit name="bcotst-unit">

        <provider>org.hibernate.ejb.HibernatePersistence</provider>        
        <class>br.com.paulistano.modelo.PlcCtbConta</class>

        <properties>

            <property name="javax.persistence.jdbc.driver" value="oracle.jdbc.OracleDriver" />
            <property name="javax.persistence.jdbc.url" value="jdbc:oracle:thin:@10.0.253.7:1521:bcotst" />
            <property name="javax.persistence.jdbc.user" value="userDoUsuario" />            
            <property name="javax.persistence.jdbc.password" value="passwordDoUsuario" />

            <property name="hibernate.dialect" value="org.hibernate.dialect.Oracle10gDialect" />
            <property name="hibernate.hbm2ddl.auto" value="update" />
            <property name="hibernate.show_sql" value="false" />
            <property name="hibernate.format_sql" value="false" />
        </properties>

    </persistence-unit>

</persistence>

Classe onde ocorre o erro

public class JPAUtil {

    private static EntityManagerFactory entityManagerFactory = Persistence
            .createEntityManagerFactory("bcotst-unit");

    public EntityManager getEntityManager() {
        return entityManagerFactory.createEntityManager();
    }

}

Arquivo persistence.xml

"

org.hibernate.ejb.HibernatePersistence br.com.paulistano.modelo.PlcCtbConta

"

"

org.hibernate.ejb.HibernatePersistence br.com.paulistano.modelo.PlcCtbConta

"

Não estou conseguindo colar o arquivo persistence aqui

Oi Renato,

Você pode postar código adicionando três backticks (```) antes e depois do código. Eu editei o comentário e consegui ver o conteúdo do arquivo.

Renato, no console antes da exception aparece algo do tipo?

INFO: HHH000318: Could not find any META-INF/persistence.xml file in the classpath

Abraço.

solução!

Olá Lucas,

Eu abri um tópico referente a esse mesmo problema no curso de JPA e o moderador Nico, me orientou a persistir o Jar do Entity-manager com a mesma versão do Hibernate-core, porque estava ocorrendo o Jar Hell. Fiz o que ele me orientou e funcionou.

Obrigado pelo apoio.

Oi Renato, que bom que resolveu! :)

Abraço!

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software