Erro classe ConexaoHibernateFilter

1 resposta
E

Gente, to com a classe: ConexaoHibernateFiler da seguinte Forma:

package br.com.javaparaweb.financeiro.util;

import javax.servlet.*;

import javax.servlet.annotation.WebFilter;

import org.hibernate.Session;

import org.hibernate.SessionFactory;

import org.hibernate.Transaction;

import br.com.javaparaweb.financeiro.util.HibernateUtil;
@WebFilter(urlPatterns = { *.jsf })

public class ConexaoHibernateFilter implements Filter {

private SessionFactory sf;
public void init(FilterConfig config) throws ServletException {
	this.sf = HibernateUtil.getSessionFactory();
}

public void doFilter(ServletRequest servletRequest,
		ServletResponse servletResponse, FilterChain chain)
		throws ServletException {

	Session currentSession = this.sf.getCurrentSession();

	Transaction transaction = null;

	try {
		transaction = currentSession.beginTransaction();
		chain.doFilter(servletRequest, servletResponse);
		transaction.commit();
		if (currentSession.isOpen()) {
			currentSession.close();
		}
	} catch (Throwable ex) {
		try {
			if (transaction.isActive()) {
				transaction.rollback();
			}
		} catch (Throwable t) {
			t.printStackTrace();
		}
		throw new ServletException(ex);
	}
}

public void destroy() {
}

}

mas quando executo a aplicação, ele dá o erro:

java.lang.NullPointerException

at br.com.javaparaweb.financeiro.web.filter.ConexaoHibernateFilter.doFilter(ConexaoHibernateFilter.java:38)

at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:239)

at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)

at br.com.javaparaweb.financeiro.util.ConexaoHibernateFilter.doFilter(ConexaoHibernateFilter.java:28)

at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:239)

at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)

at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:212)

at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:106)

at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:502)

at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:141)

at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:79)

at org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:616)

at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:88)

at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:518)

at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1096)

at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:674)

at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1500)

at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.run(NioEndpoint.java:1456)

at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)

at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)

at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)

at java.lang.Thread.run(Thread.java:745)

abr 21, 2016 12:30:01 AM org.apache.catalina.core.StandardWrapperValve invoke

GRAVE: Servlet.service() for servlet [Faces Servlet] in context with path [/financeiro] threw exception [javax.servlet.ServletException: org.hibernate.TransactionException: nested transactions not supported] with root cause

org.hibernate.TransactionException: nested transactions not supported

at org.hibernate.engine.transaction.spi.AbstractTransactionImpl.begin(AbstractTransactionImpl.java:154)

at org.hibernate.internal.SessionImpl.beginTransaction(SessionImpl.java:1435)

at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)

at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)

at java.lang.reflect.Method.invoke(Method.java:497)

at org.hibernate.context.internal.ThreadLocalSessionContext$TransactionProtectionWrapper.invoke(ThreadLocalSessionContext.java:356)

at com.sun.proxy.$Proxy14.beginTransaction(Unknown Source)

at br.com.javaparaweb.financeiro.web.filter.ConexaoHibernateFilter.doFilter(ConexaoHibernateFilter.java:30)

at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:239)

at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)

at br.com.javaparaweb.financeiro.util.ConexaoHibernateFilter.doFilter(ConexaoHibernateFilter.java:28)

at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:239)

at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)

at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:212)

at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:106)

at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:502)

at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:141)

at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:79)

at org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:616)

at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:88)

at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:518)

at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1096)

at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:674)

at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1500)

at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.run(NioEndpoint.java:1456)

at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)

at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)

at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)

at java.lang.Thread.run(Thread.java:745)

Alguém pode me ajudar?

Desde já, obrigado!

1 Resposta

E

Oi, consegui resolver retirando o @WebFilter(urlPatterns = { “*.jsf” })
rsrsrs

Obrigado!

Criado 21 de abril de 2016
Ultima resposta 21 de abr. de 2016
Respostas 1
Participantes 1