Seam + Toplink + Glassfish, alguém já conseguiu?

7 views
Skip to first unread message

Diénert Vieira

unread,
Nov 20, 2009, 4:30:14 PM11/20/09
to jav...@googlegroups.com
Pessoal, estou tentando configurar essas três tecnologias juntas e estou tendo alguns probleminhas.

Segui esse tutorial do próprio Dan Allen, mas talvez não tenha entendido corretamente.

Inicialmente resolvi todos os problemas de dependência necessárias colocando os jars que são exigidos para a aplicação rodar.

Até aí tudo bem. Em seguida fiz as configurações necessárias citadas no tutorial:

Step 1: Preparing an alternate provider

Step 2: Attaching the persistence unit to the provider

Step 3: Breaking the news to Seam that you won't be using Hibernate

Neste último passo eu não coloquei o componente

   <component name="org.jboss.seam.persistence.persistenceProvider"
class="org.jboss.seam.persistence.PersistenceProvider"/>
No components.xml

Fiz a segunda opção, um componente do tipo:

import javax.persistence.EntityManager;
import org.jboss.seam.annotations.Name;
import org.jboss.seam.persistence.PersistenceProvider;

@Name("org.jboss.seam.persistence.persistenceProvider")
public class NoManualFlushPersistenceProvider extends PersistenceProvider {

@Override
public void setFlushModeManual(EntityManager entityManager) {
// no-op
}
}

Mas o provedor do entity manager está retornando nullo. Alguém sabe por quê?

A exceção foi:

Caused by: javax.persistence.PersistenceException: No Persistence provider for EntityManager named ITVP3:  The following providers:
oracle.toplink.essentials.PersistenceProvider
oracle.toplink.essentials.ejb.cmp3.EntityManagerFactoryProvider
Returned null to createEntityManagerFactory.
    at javax.persistence.Persistence.createEntityManagerFactory(Persistence.java:154)
    at org.jboss.seam.persistence.EntityManagerFactory.createEntityManagerFactory(EntityManagerFactory.java:85)
    at org.jboss.seam.persistence.EntityManagerFactory.startup(EntityManagerFactory.java:50)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:597)
    at org.jboss.seam.util.Reflections.invoke(Reflections.java:22)
    at org.jboss.seam.util.Reflections.invokeAndWrap(Reflections.java:144)
    at org.jboss.seam.Component.callComponentMethod(Component.java:2257)
    at org.jboss.seam.Component.callCreateMethod(Component.java:2172)
    at org.jboss.seam.Component.newInstance(Component.java:2132)
    ... 76 more

--
Diénert de Alencar Vieira
Sun Certified Java Programmer - SCJP 6
Graduado em Sistemas para Internet - IFPB
Bacharelando em Ciência da Computação - UFPB

Diénert Vieira

unread,
Nov 20, 2009, 7:18:02 PM11/20/09
to jav...@googlegroups.com
Ninguém?


--
Diénert de Alencar Vieira
Sun Certified Java Programmer - SCJP 6
Graduado em Sistemas para Internet - IFPB
Bacharelando em Ciência da Computação - UFPB


2009/11/20 Diénert Vieira <dienert...@gmail.com>

Diénert Vieira

unread,
Nov 20, 2009, 7:19:02 PM11/20/09
to jav...@googlegroups.com

Diénert Vieira

unread,
Nov 20, 2009, 8:34:05 PM11/20/09
to pb...@googlegroups.com, jav...@googlegroups.com
O persistence.xml está assim (PROJETO/src/model/META-INF/persistence.xml):

<?xml version="1.0" encoding="UTF-8"?>

<persistence version="1.0"
             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">

    <persistence-unit name="nomeDoBanco" transaction-type="RESOURCE_LOCAL">

        <provider>oracle.toplink.essentials.PersistenceProvider</provider>
       
        <!-- várias classes -->
        <class>...</class>

        <properties>
            <property name="toplink.jdbc.user" value="usuario" />
            <property name="toplink.jdbc.password" value="senha" />
            <property name="toplink.jdbc.url" value="jdbc:postgresql://localhost:5432/nomeDoBanco" />
            <property name="toplink.jdbc.driver" value="org.postgresql.Driver" />
            <property name="toplink.logging.level" value="CONFIG" />
            <property name="toplink.ddl-generation" value="create-tables" />
        </properties>

    </persistence-unit>

</persistence>

Os jars são os communs:

antlr-runtime.jar
commons-beanutils.jar
commons-digester.jar
commons-logging.jar
core.jar
dom4j.jar
drools-compiler.jar
drools-core.jar
hibernate-annotations.jar
javassist.jar
jboss-el.jar
jboss-seam-debug.jar
jboss-seam-ioc.jar
jboss-seam-mail.jar
jboss-seam-pdf.jar
jboss-seam-remoting.jar
jboss-seam-ui.jar
jboss-seam.jar
jbpm-jpdl.jar
jsf-facelets.jar
mvel14.jar
postgresql-8.3-603.jdbc3.jar
richfaces-api.jar
richfaces-impl.jar
richfaces-ui.jar
toplink-essentials-agent.jar
toplink-essentials.jar


--
Diénert de Alencar Vieira
Sun Certified Java Programmer - SCJP 6
Graduado em Sistemas para Internet - IFPB
Bacharelando em Ciência da Computação - UFPB


2009/11/20 Rafael Trindade Chiappetta <rafae...@gmail.com>
Tu colocou o provide direitinho no XML?
Eu tive esse problema uma vez, nao exatamente com essas tecnologias, com o hibernate.
O que resolveu foi um Clean no prejeto.. =P

=====
Rafael Trindade Chiappetta



2009/11/20 Diénert Vieira <dienert...@gmail.com>

Marcelo Balloni

unread,
Nov 21, 2009, 6:33:00 AM11/21/09
to jav...@googlegroups.com
 Cara, nunca mexi com topLink mas focaria no persistence.xml.
 Da uma olhada nesse link:

 http://database.in2p3.fr/doc/oracle/Oracle_Application_Server_10_Release_3/web.1013/b28221/cfgdepds005.htm

 Abraços.

2009/11/20 Diénert Vieira <dienert...@gmail.com>

Diénert Vieira

unread,
Nov 22, 2009, 1:38:55 AM11/22/09
to jav...@googlegroups.com, pb...@googlegroups.com
Obrigado pelas dicas pessoal. Infelizmente ainda não resolvi. Quando conseguir, posto aqui o caminho das pedras.


--
Diénert de Alencar Vieira
Sun Certified Java Programmer - SCJP 6
Graduado em Sistemas para Internet - IFPB
Bacharelando em Ciência da Computação - UFPB


2009/11/21 Marcelo Balloni <marcelo...@gmail.com>
Reply all
Reply to author
Forward
0 new messages