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

Dúvida no Ex. 5 da Aula 3 - Integração do JPA com Pool e DataSource

Caused by: org.jboss.as.server.deployment.DeploymentUnitProcessingException: JBAS011047: Component class br.com.caelum.livraria.dao.AutorDao for component AutorDao has errors: JBAS011440: Can't find a persistence unit named null in deployment "livraria.war"

apos este erro coloquei o (unitName="livraria") ...

Caused by: org.jboss.as.server.deployment.DeploymentUnitProcessingException: JBAS011047: Component class br.com.caelum.livraria.dao.AutorDao for component AutorDao has errors: JBAS011440: Can't find a persistence unit named livraria in deployment "livraria.war"

sem compreender o porque dos erros...

@Stateless public class AutorDao { @PersistenceContext(unitName="livraria")

private EntityManager manager;

org.hibernate.ejb.HibernatePersistence

java:/livrariaDS

Peço ajuda em relação a esse erro.

16 respostas

Ola, Willian !

Ele não ta achando o seu 'livraria' que é seu persiste unit.

No seu persistence.xml tem uma linha onde você define o nome do seu persistence unit.

Seu Persistence.xml esta configurado como abaixo ?

.... 
<persistence-unit name="livraria" transaction-type="JTA">
<jta-data-source>java:/livrariaDS</jta-data-source>
......

Posta seu persistence.xml aqui por gentileza.

Abraço!

<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="livraria">

        <provider>org.hibernate.ejb.HibernatePersistence</provider>
        <jta-data-source>java:/livrariaDS</jta-data-source>

        <class>br.com.caelum.livraria.modelo.Autor</class>
        <class>br.com.caelum.livraria.modelo.Livro</class>
        <class>br.com.caelum.livraria.modelo.Usuario</class>

        <properties>

            <!-- Configuracoes especificas do Hibernate -->
            <property name="hibernate.dialect" value="org.hibernate.dialect.MySQL5InnoDBDialect" />
            <property name="hibernate.hbm2ddl.auto" value="update" />
            <property name="hibernate.show_sql" value="true" />

        </properties>
    </persistence-unit>
</persistence>

Segue

'''

org.hibernate.ejb.HibernatePersistence java:/livrariaDS

br.com.caelum.livraria.modelo.Autor br.com.caelum.livraria.modelo.Livro br.com.caelum.livraria.modelo.Usuario

'''

'

org.hibernate.ejb.HibernatePersistence java:/livrariaDS

br.com.caelum.livraria.modelo.Autor br.com.caelum.livraria.modelo.Livro br.com.caelum.livraria.modelo.Usuario

'

org.hibernate.ejb.HibernatePersistence java:/livrariaDS

br.com.caelum.livraria.modelo.Autor br.com.caelum.livraria.modelo.Livro br.com.caelum.livraria.modelo.Usuario
org.hibernate.ejb.HibernatePersistence java:/livrariaDS

br.com.caelum.livraria.modelo.Autor br.com.caelum.livraria.modelo.Livro br.com.caelum.livraria.modelo.Usuario
<persistence-unit name="livraria">

        <provider>org.hibernate.ejb.HibernatePersistence</provider>
        <jta-data-source>java:/livrariaDS</jta-data-source>

        <class>br.com.caelum.livraria.modelo.Autor</class>
        <class>br.com.caelum.livraria.modelo.Livro</class>
        <class>br.com.caelum.livraria.modelo.Usuario</class>

        <properties>

            <!-- Configuracoes especificas do Hibernate -->
            <property name="hibernate.dialect" value="org.hibernate.dialect.MySQL5InnoDBDialect" />
            <property name="hibernate.hbm2ddl.auto" value="update" />
            <property name="hibernate.show_sql" value="true" />

        </properties>
    </persistence-unit>

Essa marcação do alura para formatar o texto é um enigma! onde somente se queima cartuchos!! i need help!! kkkkk

org.hibernate.ejb.HibernatePersistence java:/livrariaDS

br.com.caelum.livraria.modelo.Autor br.com.caelum.livraria.modelo.Livro br.com.caelum.livraria.modelo.Usuario

Ola, William Leite !

Alguma novidade ?

Conseguiu resolver ?

Sobre a formatação, tem uma ajuda do lado direito da caixa de texto, um botão chamado [Formatação]. Da uma olhadinha nele.

Abraço ! :o)

solução!

Brother,

Consegui resolver sim, o problema estava na estrutura dos diretórios, o meu meta-inf estava dentro do webcontent...

Em relação a formatação não obtive exito usando as dicas do menu de auxilio.

Mas está tudo certo. Obrigado.

Oi William,

Que bom que já resolveu seu problema. Sobre a marcação do Alura, basta colocar três aspas simples, porém não aspas normais, aquela que usamos para o sinal de crase `

Assim, ficaria (```) ... porém sem os parênteses:

Oi, sou um texto formatado :)

Abraço

<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="livraria">

        <provider>org.hibernate.ejb.HibernatePersistence</provider>
        <jta-data-source>java:/livrariaDS</jta-data-source>

        <class>br.com.caelum.livraria.modelo.Autor</class>
        <class>br.com.caelum.livraria.modelo.Livro</class>
        <class>br.com.caelum.livraria.modelo.Usuario</class>

        <properties>

            <!-- Configuracoes especificas do Hibernate -->
            <property name="hibernate.dialect" value="org.hibernate.dialect.MySQL5InnoDBDialect" />
            <property name="hibernate.hbm2ddl.auto" value="update" />
            <property name="hibernate.show_sql" value="true" />
            <property name="hibernate.format_sql" value="true" />

        </properties>
    </persistence-unit>
</persistence>

Isso, só faltou um [ENTER] entre os três ``` e o início do seu código :)

O interpretador que usamos no alura não entende se estiver na mesma linha. Na mesma linha apenas com 1 crase dessa Algo assim.

Abraço

<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="livraria">

        <provider>org.hibernate.ejb.HibernatePersistence</provider>
        <jta-data-source>java:/livrariaDS</jta-data-source>

        <class>br.com.caelum.livraria.modelo.Autor</class>
        <class>br.com.caelum.livraria.modelo.Livro</class>
        <class>br.com.caelum.livraria.modelo.Usuario</class>

        <properties>

            <!-- Configuracoes especificas do Hibernate -->
            <property name="hibernate.dialect" value="org.hibernate.dialect.MySQL5InnoDBDialect" />
            <property name="hibernate.hbm2ddl.auto" value="update" />
            <property name="hibernate.show_sql" value="true" />
            <property name="hibernate.format_sql" value="true" />

        </properties>
    </persistence-unit>
</persistence>

opa!!! agora sim. kkkk

Lição aprendida, muito obrigado.

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