Não estou conseguindo rodar GlassFish com Eclipse e JPA2 usando o Mysql. Preciso de ajuda

2 respostas
G
Meus arquivos

JPAFilter

@WebFilter(servletNames={“Faces Servlet”})

public class JPAFilter implements Filter{

private EntityManagerFactory factory;

<a class="mention" href="/u/override">@Override</a>

public void destroy() {

// TODO Auto-generated method stub

this.factory.close();

}

<a class="mention" href="/u/override">@Override</a>

public void doFilter(ServletRequest req, ServletResponse res,

FilterChain chain) throws IOException, ServletException {

// TODO Auto-generated method stub

EntityManager entityManager = this.factory.createEntityManager();

req.setAttribute(“entityManager”, entityManager);	

chain.doFilter(req, res);

try{

entityManager.getTransaction().begin();

entityManager.getTransaction().commit();

}catch(Exception e){

e.printStackTrace();

entityManager.getTransaction().rollback();

}finally{

entityManager.close();

}

}

<a class="mention" href="/u/override">@Override</a>

public void init(FilterConfig filterConfig) throws ServletException {

// TODO Auto-generated method stub

this.factory = Persistence.createEntityManagerFactory(“copadomundo”);

}

}

Meu Persistence.xml

<persistence-unit name="copadomundo" transaction-type="RESOURCE_LOCAL">
	<provider>org.hibernate.ejb.HibernatePersistence</provider>
		<properties>
			<property name="hibernate.dialect" value="org.hibernate.dialect.MySQLInnoDBDialect" />
			<property name="hibernate.hbm2ddl.auto" value="create" />
			<property name="javax.persistence.jdbc.driver" value="com.mysql.jdbc.Driver" />
			<property name="javax.persistence.jdbc.user" value="root" />
			 <property name="javax.persistence.jdbc.password" value="smtadm" />
			 <property name="javax.persistence.jdbc.url" value="jdbc:mysql://localhost:3306/copadomundo" />
			 <property name="hibernate.cache.provider_class" value="org.hibernate.cache.NoCacheProvider"/>
 			 <property name="hibernate.show_sql" value="true"/>
		</properties>
</persistence-unit>
Meu BEAN

@ManagedBean

public class SelecaoBean {

@ManagedProperty(value = “#{entityManager})

@PersistenceUnit(unitName=copadomundo)

private EntityManager entityManager;

private Selecao selecao = new Selecao();

private List selecoes;

public void adiciona() {

System.out.println(this.entityManager);

SelecaoRepository repository = new SelecaoRepository(this.entityManager);

repository.adiciona(this.selecao);

this.selecao = new Selecao();

this.selecoes = null;

}

public List getSelecoes() {

if(this.selecoes == null){

System.out.println(CHAMANDO O REPOSITORIO);

SelecaoRepository repository = new SelecaoRepository(this.entityManager);

this.selecoes = repository.getSelecoes();

}

return this.selecoes;

}

Quando rodo o GlassFixh 3.0 aparece o erro abaixo:

Grave: WebModule[/CopaDoMundo]PWC1270: Exception starting filter filtros.JPAFilter

java.lang.NoClassDefFoundError: org/hibernate/MappingException

at org.hibernate.ejb.HibernatePersistence.createEntityManagerFactory(HibernatePersistence.java:124)

at javax.persistence.Persistence.createEntityManagerFactory(Unknown Source)

at javax.persistence.Persistence.createEntityManagerFactory(Unknown Source)

at filtros.JPAFilter.init(JPAFilter.java:54)

at org.apache.catalina.core.ApplicationFilterConfig.getFilter(ApplicationFilterConfig.java:266)

at org.apache.catalina.core.ApplicationFilterConfig.(ApplicationFilterConfig.java:120)

at org.apache.catalina.core.StandardContext.filterStart(StandardContext.java:4625)



Caused by: java.lang.ClassNotFoundException: org.hibernate.MappingException

at java.net.URLClassLoader$1.run(URLClassLoader.java:202)


2 Respostas

Hebert_Coelho

Edita seu codigo e coloca ele cercado pela tag code. ficará mais facil te ajudar.

G

Mudei a msg acima para visualização do erro.

Acontece que não consigo rodar o Glassfish configurando-o com Hibernate.
Toda vez que vou rodar acontece o erro acima, apesar de o servidor ficar no ar.
Porém quando roda a acplicação dá o erro de NullPointerException e as tabelas não são geradas no mysql.

Obrigado,

Criado 27 de novembro de 2011
Ultima resposta 28 de nov. de 2011
Respostas 2
Participantes 2