Conexao

bom dia pessoal,

estou com um problema um pouco urgente, coloquei um site no ar que é um cadastro simples. Fiz seguindo a apostila do vraptor3. Ele faz os cadastros mas de tempos em tempos ele dá esse erro. Aí só volta ao normal, qnd reinicio servidor

br.com.caelum.vraptor.InterceptionException: exception raised, check root cause for details: org.hibernate.exception.GenericJDBCException: could not execute query
br.com.caelum.vraptor.interceptor.ExecuteMethodInterceptor.intercept(ExecuteMethodInterceptor.java:96)
br.com.caelum.vraptor.core.ToInstantiateInterceptorHandler.execute(ToInstantiateInterceptorHandler.java:54)
br.com.caelum.vraptor.core.DefaultInterceptorStack.next(DefaultInterceptorStack.java:54)
br.com.caelum.vraptor.core.LazyInterceptorHandler.execute(LazyInterceptorHandler.java:61)
br.com.caelum.vraptor.core.DefaultInterceptorStack.next(DefaultInterceptorStack.java:54)
br.com.caelum.vraptor.interceptor.ParametersInstantiatorInterceptor.intercept(ParametersInstantiatorInterceptor.java:89)
br.com.caelum.vraptor.core.LazyInterceptorHandler.execute(LazyInterceptorHandler.java:59)
br.com.caelum.vraptor.core.DefaultInterceptorStack.next(DefaultInterceptorStack.java:54)
br.com.caelum.vraptor.core.ToInstantiateInterceptorHandler.execute(ToInstantiateInterceptorHandler.java:56)
br.com.caelum.vraptor.core.DefaultInterceptorStack.next(DefaultInterceptorStack.java:54)
br.com.caelum.vraptor.interceptor.FlashInterceptor.intercept(FlashInterceptor.java:83)
br.com.caelum.vraptor.core.ToInstantiateInterceptorHandler.execute(ToInstantiateInterceptorHandler.java:54)
br.com.caelum.vraptor.core.DefaultInterceptorStack.next(DefaultInterceptorStack.java:54)
br.com.caelum.vraptor.interceptor.InstantiateInterceptor.intercept(InstantiateInterceptor.java:48)
br.com.caelum.vraptor.core.ToInstantiateInterceptorHandler.execute(ToInstantiateInterceptorHandler.java:54)
br.com.caelum.vraptor.core.DefaultInterceptorStack.next(DefaultInterceptorStack.java:54)
br.com.caelum.vraptor.interceptor.ExceptionHandlerInterceptor.intercept(ExceptionHandlerInterceptor.java:71)
br.com.caelum.vraptor.core.ToInstantiateInterceptorHandler.execute(ToInstantiateInterceptorHandler.java:54)
br.com.caelum.vraptor.core.DefaultInterceptorStack.next(DefaultInterceptorStack.java:54)
br.com.caelum.vraptor.core.ToInstantiateInterceptorHandler.execute(ToInstantiateInterceptorHandler.java:56)
br.com.caelum.vraptor.core.DefaultInterceptorStack.next(DefaultInterceptorStack.java:54)
br.com.caelum.vraptor.interceptor.ResourceLookupInterceptor.intercept(ResourceLookupInterceptor.java:69)
br.com.caelum.vraptor.core.ToInstantiateInterceptorHandler.execute(ToInstantiateInterceptorHandler.java:54)
br.com.caelum.vraptor.core.DefaultInterceptorStack.next(DefaultInterceptorStack.java:54)
br.com.caelum.vraptor.core.EnhancedRequestExecution.execute(EnhancedRequestExecution.java:23)
br.com.caelum.vraptor.VRaptor$1.insideRequest(VRaptor.java:92)
br.com.caelum.vraptor.ioc.spring.SpringProvider.provideForRequest(SpringProvider.java:58)
br.com.caelum.vraptor.VRaptor.doFilter(VRaptor.java:89)

O que pode ser?

minhas classes de session estão iguais às da apostila…

obrigado

cara,

nao deu mais exceção nao, pois so que essa exceção não da pra te ajudar.

PS: coloque seu codigo dentro da tag [code]

t+

axo q tem haver com SQL dá uma olhada…

quais são os caused by?

Segue o erro completo

type Exception report

message

description The server encountered an internal error () that prevented it from fulfilling this request.

exception

br.com.caelum.vraptor.InterceptionException: exception raised, check root cause for details: org.hibernate.exception.GenericJDBCException: could not execute query
	br.com.caelum.vraptor.interceptor.ExecuteMethodInterceptor.intercept(ExecuteMethodInterceptor.java:96)
	br.com.caelum.vraptor.core.ToInstantiateInterceptorHandler.execute(ToInstantiateInterceptorHandler.java:54)
	br.com.caelum.vraptor.core.DefaultInterceptorStack.next(DefaultInterceptorStack.java:54)
	br.com.caelum.vraptor.core.LazyInterceptorHandler.execute(LazyInterceptorHandler.java:61)
	br.com.caelum.vraptor.core.DefaultInterceptorStack.next(DefaultInterceptorStack.java:54)
	br.com.caelum.vraptor.interceptor.ParametersInstantiatorInterceptor.intercept(ParametersInstantiatorInterceptor.java:89)
	br.com.caelum.vraptor.core.LazyInterceptorHandler.execute(LazyInterceptorHandler.java:59)
	br.com.caelum.vraptor.core.DefaultInterceptorStack.next(DefaultInterceptorStack.java:54)
	br.com.caelum.vraptor.core.ToInstantiateInterceptorHandler.execute(ToInstantiateInterceptorHandler.java:56)
	br.com.caelum.vraptor.core.DefaultInterceptorStack.next(DefaultInterceptorStack.java:54)
	br.com.caelum.vraptor.core.ToInstantiateInterceptorHandler.execute(ToInstantiateInterceptorHandler.java:56)
	br.com.caelum.vraptor.core.DefaultInterceptorStack.next(DefaultInterceptorStack.java:54)
	br.com.caelum.vraptor.interceptor.InstantiateInterceptor.intercept(InstantiateInterceptor.java:48)
	br.com.caelum.vraptor.core.ToInstantiateInterceptorHandler.execute(ToInstantiateInterceptorHandler.java:54)
	br.com.caelum.vraptor.core.DefaultInterceptorStack.next(DefaultInterceptorStack.java:54)
	br.com.caelum.vraptor.interceptor.ExceptionHandlerInterceptor.intercept(ExceptionHandlerInterceptor.java:71)
	br.com.caelum.vraptor.core.ToInstantiateInterceptorHandler.execute(ToInstantiateInterceptorHandler.java:54)
	br.com.caelum.vraptor.core.DefaultInterceptorStack.next(DefaultInterceptorStack.java:54)
	br.com.caelum.vraptor.interceptor.FlashInterceptor.intercept(FlashInterceptor.java:83)
	br.com.caelum.vraptor.core.ToInstantiateInterceptorHandler.execute(ToInstantiateInterceptorHandler.java:54)
	br.com.caelum.vraptor.core.DefaultInterceptorStack.next(DefaultInterceptorStack.java:54)
	br.com.caelum.vraptor.interceptor.ResourceLookupInterceptor.intercept(ResourceLookupInterceptor.java:69)
	br.com.caelum.vraptor.core.ToInstantiateInterceptorHandler.execute(ToInstantiateInterceptorHandler.java:54)
	br.com.caelum.vraptor.core.DefaultInterceptorStack.next(DefaultInterceptorStack.java:54)
	br.com.caelum.vraptor.core.EnhancedRequestExecution.execute(EnhancedRequestExecution.java:23)
	br.com.caelum.vraptor.VRaptor$1.insideRequest(VRaptor.java:92)
	br.com.caelum.vraptor.ioc.spring.SpringProvider.provideForRequest(SpringProvider.java:58)
	br.com.caelum.vraptor.VRaptor.doFilter(VRaptor.java:89)
root cause

org.hibernate.exception.GenericJDBCException: could not execute query
	org.hibernate.exception.SQLStateConverter.handledNonSpecificException(SQLStateConverter.java:126)
	org.hibernate.exception.SQLStateConverter.convert(SQLStateConverter.java:114)
	org.hibernate.exception.JDBCExceptionHelper.convert(JDBCExceptionHelper.java:66)
	org.hibernate.loader.Loader.doList(Loader.java:2235)
	org.hibernate.loader.Loader.listIgnoreQueryCache(Loader.java:2129)
	org.hibernate.loader.Loader.list(Loader.java:2124)
	org.hibernate.loader.criteria.CriteriaLoader.list(CriteriaLoader.java:118)
	org.hibernate.impl.SessionImpl.list(SessionImpl.java:1597)
	org.hibernate.impl.CriteriaImpl.list(CriteriaImpl.java:306)
	org.hibernate.impl.CriteriaImpl.uniqueResult(CriteriaImpl.java:328)
	projetochuva.cptec.inpe.br.dao.CursoDao.existeEmail(CursoDao.java:27)
	projetochuva.cptec.inpe.br.util.Validacao$5.<init>(Validacao.java:151)
	projetochuva.cptec.inpe.br.util.Validacao.validaCurso(Validacao.java:133)
	projetochuva.cptec.inpe.br.controller.CursosController.adiciona(CursosController.java:62)
	sun.reflect.GeneratedMethodAccessor71.invoke(Unknown Source)
	sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
	java.lang.reflect.Method.invoke(Method.java:597)
	br.com.caelum.vraptor.interceptor.ExecuteMethodInterceptor.intercept(ExecuteMethodInterceptor.java:61)
	br.com.caelum.vraptor.core.ToInstantiateInterceptorHandler.execute(ToInstantiateInterceptorHandler.java:54)
	br.com.caelum.vraptor.core.DefaultInterceptorStack.next(DefaultInterceptorStack.java:54)
	br.com.caelum.vraptor.core.LazyInterceptorHandler.execute(LazyInterceptorHandler.java:61)
	br.com.caelum.vraptor.core.DefaultInterceptorStack.next(DefaultInterceptorStack.java:54)
	br.com.caelum.vraptor.interceptor.ParametersInstantiatorInterceptor.intercept(ParametersInstantiatorInterceptor.java:89)
	br.com.caelum.vraptor.core.LazyInterceptorHandler.execute(LazyInterceptorHandler.java:59)
	br.com.caelum.vraptor.core.DefaultInterceptorStack.next(DefaultInterceptorStack.java:54)
	br.com.caelum.vraptor.core.ToInstantiateInterceptorHandler.execute(ToInstantiateInterceptorHandler.java:56)
	br.com.caelum.vraptor.core.DefaultInterceptorStack.next(DefaultInterceptorStack.java:54)
	br.com.caelum.vraptor.core.ToInstantiateInterceptorHandler.execute(ToInstantiateInterceptorHandler.java:56)
	br.com.caelum.vraptor.core.DefaultInterceptorStack.next(DefaultInterceptorStack.java:54)
	br.com.caelum.vraptor.interceptor.InstantiateInterceptor.intercept(InstantiateInterceptor.java:48)
	br.com.caelum.vraptor.core.ToInstantiateInterceptorHandler.execute(ToInstantiateInterceptorHandler.java:54)
	br.com.caelum.vraptor.core.DefaultInterceptorStack.next(DefaultInterceptorStack.java:54)
	br.com.caelum.vraptor.interceptor.ExceptionHandlerInterceptor.intercept(ExceptionHandlerInterceptor.java:71)
	br.com.caelum.vraptor.core.ToInstantiateInterceptorHandler.execute(ToInstantiateInterceptorHandler.java:54)
	br.com.caelum.vraptor.core.DefaultInterceptorStack.next(DefaultInterceptorStack.java:54)
	br.com.caelum.vraptor.interceptor.FlashInterceptor.intercept(FlashInterceptor.java:83)
	br.com.caelum.vraptor.core.ToInstantiateInterceptorHandler.execute(ToInstantiateInterceptorHandler.java:54)
	br.com.caelum.vraptor.core.DefaultInterceptorStack.next(DefaultInterceptorStack.java:54)
	br.com.caelum.vraptor.interceptor.ResourceLookupInterceptor.intercept(ResourceLookupInterceptor.java:69)
	br.com.caelum.vraptor.core.ToInstantiateInterceptorHandler.execute(ToInstantiateInterceptorHandler.java:54)
	br.com.caelum.vraptor.core.DefaultInterceptorStack.next(DefaultInterceptorStack.java:54)
	br.com.caelum.vraptor.core.EnhancedRequestExecution.execute(EnhancedRequestExecution.java:23)
	br.com.caelum.vraptor.VRaptor$1.insideRequest(VRaptor.java:92)
	br.com.caelum.vraptor.ioc.spring.SpringProvider.provideForRequest(SpringProvider.java:58)
	br.com.caelum.vraptor.VRaptor.doFilter(VRaptor.java:89)
root cause

org.postgresql.util.PSQLException: ERROR: current transaction is aborted, commands ignored until end of transaction block
	org.postgresql.core.v3.QueryExecutorImpl.receiveErrorResponse(QueryExecutorImpl.java:1548)
	org.postgresql.core.v3.QueryExecutorImpl.processResults(QueryExecutorImpl.java:1316)
	org.postgresql.core.v3.QueryExecutorImpl.execute(QueryExecutorImpl.java:191)
	org.postgresql.jdbc2.AbstractJdbc2Statement.execute(AbstractJdbc2Statement.java:452)
	org.postgresql.jdbc2.AbstractJdbc2Statement.executeWithFlags(AbstractJdbc2Statement.java:351)
	org.postgresql.jdbc2.AbstractJdbc2Statement.executeQuery(AbstractJdbc2Statement.java:255)
	org.hibernate.jdbc.AbstractBatcher.getResultSet(AbstractBatcher.java:208)
	org.hibernate.loader.Loader.getResultSet(Loader.java:1812)
	org.hibernate.loader.Loader.doQuery(Loader.java:697)
	org.hibernate.loader.Loader.doQueryAndInitializeNonLazyCollections(Loader.java:259)
	org.hibernate.loader.Loader.doList(Loader.java:2232)
	org.hibernate.loader.Loader.listIgnoreQueryCache(Loader.java:2129)
	org.hibernate.loader.Loader.list(Loader.java:2124)
	org.hibernate.loader.criteria.CriteriaLoader.list(CriteriaLoader.java:118)
	org.hibernate.impl.SessionImpl.list(SessionImpl.java:1597)
	org.hibernate.impl.CriteriaImpl.list(CriteriaImpl.java:306)
	org.hibernate.impl.CriteriaImpl.uniqueResult(CriteriaImpl.java:328)
	projetochuva.cptec.inpe.br.dao.CursoDao.existeEmail(CursoDao.java:27)
	projetochuva.cptec.inpe.br.util.Validacao$5.<init>(Validacao.java:151)
	projetochuva.cptec.inpe.br.util.Validacao.validaCurso(Validacao.java:133)
	projetochuva.cptec.inpe.br.controller.CursosController.adiciona(CursosController.java:62)
	sun.reflect.GeneratedMethodAccessor71.invoke(Unknown Source)
	sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
	java.lang.reflect.Method.invoke(Method.java:597)
	br.com.caelum.vraptor.interceptor.ExecuteMethodInterceptor.intercept(ExecuteMethodInterceptor.java:61)
	br.com.caelum.vraptor.core.ToInstantiateInterceptorHandler.execute(ToInstantiateInterceptorHandler.java:54)
	br.com.caelum.vraptor.core.DefaultInterceptorStack.next(DefaultInterceptorStack.java:54)
	br.com.caelum.vraptor.core.LazyInterceptorHandler.execute(LazyInterceptorHandler.java:61)
	br.com.caelum.vraptor.core.DefaultInterceptorStack.next(DefaultInterceptorStack.java:54)
	br.com.caelum.vraptor.interceptor.ParametersInstantiatorInterceptor.intercept(ParametersInstantiatorInterceptor.java:89)
	br.com.caelum.vraptor.core.LazyInterceptorHandler.execute(LazyInterceptorHandler.java:59)
	br.com.caelum.vraptor.core.DefaultInterceptorStack.next(DefaultInterceptorStack.java:54)
	br.com.caelum.vraptor.core.ToInstantiateInterceptorHandler.execute(ToInstantiateInterceptorHandler.java:56)
	br.com.caelum.vraptor.core.DefaultInterceptorStack.next(DefaultInterceptorStack.java:54)
	br.com.caelum.vraptor.core.ToInstantiateInterceptorHandler.execute(ToInstantiateInterceptorHandler.java:56)
	br.com.caelum.vraptor.core.DefaultInterceptorStack.next(DefaultInterceptorStack.java:54)
	br.com.caelum.vraptor.interceptor.InstantiateInterceptor.intercept(InstantiateInterceptor.java:48)
	br.com.caelum.vraptor.core.ToInstantiateInterceptorHandler.execute(ToInstantiateInterceptorHandler.java:54)
	br.com.caelum.vraptor.core.DefaultInterceptorStack.next(DefaultInterceptorStack.java:54)
	br.com.caelum.vraptor.interceptor.ExceptionHandlerInterceptor.intercept(ExceptionHandlerInterceptor.java:71)
	br.com.caelum.vraptor.core.ToInstantiateInterceptorHandler.execute(ToInstantiateInterceptorHandler.java:54)
	br.com.caelum.vraptor.core.DefaultInterceptorStack.next(DefaultInterceptorStack.java:54)
	br.com.caelum.vraptor.interceptor.FlashInterceptor.intercept(FlashInterceptor.java:83)
	br.com.caelum.vraptor.core.ToInstantiateInterceptorHandler.execute(ToInstantiateInterceptorHandler.java:54)
	br.com.caelum.vraptor.core.DefaultInterceptorStack.next(DefaultInterceptorStack.java:54)
	br.com.caelum.vraptor.interceptor.ResourceLookupInterceptor.intercept(ResourceLookupInterceptor.java:69)
	br.com.caelum.vraptor.core.ToInstantiateInterceptorHandler.execute(ToInstantiateInterceptorHandler.java:54)
	br.com.caelum.vraptor.core.DefaultInterceptorStack.next(DefaultInterceptorStack.java:54)
	br.com.caelum.vraptor.core.EnhancedRequestExecution.execute(EnhancedRequestExecution.java:23)
	br.com.caelum.vraptor.VRaptor$1.insideRequest(VRaptor.java:92)
	br.com.caelum.vraptor.ioc.spring.SpringProvider.provideForRequest(SpringProvider.java:58)
	br.com.caelum.vraptor.VRaptor.doFilter(VRaptor.java:89)
note The full stack trace of the root cause is available in the Apache Tomcat/6.0.20 logs.

Muito obrigado

org.postgresql.util.PSQLException: ERROR: current transaction is aborted, commands ignored until end of transaction block 

tem algum problema na sua transação, coloca seu codigo para que possa te ajudar.
t+

org.postgresql.util.PSQLException: ERROR: current transaction is aborted, commands ignored until end of transaction block

tenta dar uma olhada no controle de transações e conexões, parece ter algo de errado com ele

Não consegui identificar nada…
segue minhas classes


import javax.annotation.PostConstruct;
import javax.annotation.PreDestroy;

import org.hibernate.Session;
import org.hibernate.SessionFactory;
import br.com.caelum.vraptor.ioc.Component;
import br.com.caelum.vraptor.ioc.ComponentFactory;

@Component
public class CriadorDeSession implements ComponentFactory<Session> {
	
	private final SessionFactory factory;
	private Session session;

	public CriadorDeSession(SessionFactory factory) {
		this.factory = factory;
	}
	
	@PostConstruct
	public void abre() {
		this.session = factory.openSession();
		System.out.println("Abre sessao");
	}

	public Session getInstance() {
		return this.session;
		}
	
	@PreDestroy
	public void fecha() {
		this.session.close();
		System.out.println("Fecha sessao");
	}
	
	
}



import javax.annotation.PostConstruct;
import javax.annotation.PreDestroy;
import org.hibernate.SessionFactory;
import org.hibernate.cfg.AnnotationConfiguration;
import br.com.caelum.vraptor.ioc.ApplicationScoped;
import br.com.caelum.vraptor.ioc.Component;
import br.com.caelum.vraptor.ioc.ComponentFactory;

@Component
@ApplicationScoped
public class CriadorDeSessionFactory implements ComponentFactory<SessionFactory> {

	private SessionFactory factory;

	@PostConstruct
	public void abre() {
		AnnotationConfiguration configuration = new AnnotationConfiguration();
		configuration.configure();
		this.factory = configuration.buildSessionFactory();
		System.out.println("Abre fabrica");
	}

	public SessionFactory getInstance() {
		return this.factory;
	}

	@PreDestroy
	public void fecha() {
		this.factory.close();
		System.out.println("fecha fabrica");
	}
}

[code]

@Component
public class CursoDao {

private final Session session;

public CursoDao(Session session) {
	this.session = session;
}

public void adiciona(Curso curso) {
	Transaction tx = this.session.beginTransaction();
	this.session.save(curso);
	tx.commit();
}

public boolean existeEmail(Curso curso) {
	Curso encontrado = (Curso ) session.createCriteria(Curso .class)
			.add(Restrictions.eq("email", curso.getEmail()))
			.uniqueResult();
	return encontrado != null;
}

}

<!DOCTYPE hibernate-configuration PUBLIC
"-//Hibernate/Hibernate Configuration DTD 3.0//EN"
"http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd">
<hibernate-configuration>
	<session-factory>
		<property name="hibernate.connection.username">user</property>
		<property name="hibernate.connection.password">password</property>
		<property name="hibernate.connection.url">jdbc:postgresql://paraguai/chuva</property>
		<property name="hibernate.connection.driver_class">org.postgresql.Driver</property>
		<property name="hibernate.dialect">org.hibernate.dialect.PostgreSQLDialect</property>
<!--		<property name="hibernate.hbm2ddl.auto">update</property>-->
		<property name="show_sql">false</property>
		<property name="format_sql">false</property>

		

		<!-- entidades -->
		<mapping class="projetochuva.cptec.inpe.br.modelo.Usuario" />
		<mapping class="projetochuva.cptec.inpe.br.modelo.Experimento" />
		<mapping class="projetochuva.cptec.inpe.br.modelo.Curso" />
		<!-- fim das entidades -->
	</session-factory>
</hibernate-configuration>

tá aparecendo “Abre sessão” e “Fecha sessão” no console?
em número igual?

vc tá dando em algum lugar um try…catch(Exception) que não relança exception?

sim, está aparecendo em número igual!
segue minha classe controller e a validação


@Post @Path("/novo")
	public void adiciona(Curso curso, String msg){
		
		this.result.include("listaUf",combo.estados());
		this.result.include("listaInstituicao",combo.instituicoes());
		this.result.include("listaAtuacao",combo.atuacao());
		this.result.include("listaEscolaridade",combo.escolaridade());
		
		Validacao val = new Validacao(dao, validator);
		val.validaCurso(curso);
		validator.onErrorUsePageOf(CursosController.class).novo();
		
		dao.adiciona(curso);
		this.result.include("message",msg);
		result.redirectTo(this).novo();
		
	}
/* Validação dos campos do formulário de cadastro */
	public Curso validaCurso(final Curso curso) {

		validator.checking(new Validations() {
			{
				that(!curso.getNome().isEmpty() && curso.getNome().length() >= 6, "Error", "nome.obrigatorio");
				
				that(!curso.getCracha().isEmpty() , "Error", "cracha.obrigatorio");
				
				that(!curso.getSexo().equals("Selecione") , "Error", "sexo.obrigatorio");
				
				that(!curso.getInstituicao().equals("Selecione") , "Error", "inst.obrigatorio");
				
				that(!(curso.getInstituicao().equals("Outras") && curso.getOutrasInstituicoes().isEmpty())
						, "Error", "outras.obrigatorio");
				System.out.println("outras:" +curso.getOutrasInstituicoes());

				that(!curso.getEscolaridade().equals("Selecione") , "Error", "escolaridade.obrigatorio");
				
				that(!curso.getEmail().isEmpty() && curso.getEmail().contains("@"), "Error", "email.invalido");
				
				that(!cursoDao.existeEmail(curso), "Error", "email.existe");
				
				that(!curso.getEndereco().isEmpty() , "Error", "endereco.obrigatorio");
				
				that(!curso.getCep().isEmpty() , "Error", "cep.obrigatorio");
				
				that(!curso.getCidade().isEmpty() , "Error", "cidade.obrigatorio");
				
				that(!curso.getUf().equals("--") , "Error", "uf.obrigatorio");
				
				that(!curso.getTelefone1().isEmpty() , "Error", "telefone.obrigatorio");
				
				that(!curso.getRg().isEmpty() , "Error", "rg.obrigatorio");
				
				that(!curso.getAtuacao().equals("Selecione") , "Error", "atuacao.obrigatorio");
				
				that(!curso.getMotivacao().isEmpty() , "Error", "motivacao.obrigatorio");
			}
		});
		return curso;
	}

obs: qnd eu reinicio o tomcat ele volta a funcionar e consigo fazer vários cadastros. Aí depois de um tempo ele dá esse erro que eu postei…

:frowning:

dica: o hibernate validator faz a mesma coisa que esse seu valida curso pra vc automaticamente.

antes de começar a dar o erro que vc falou ele dá alguma outra exception?

não…funciona de boa! Eu reinicio o servidor, consigo fazer vários cadastros, aí depois de um tempo ele volta a dar o erro.

saca só http://chuvaproject.cptec.inpe.br/projetochuva/cursos/novo

se vc for agora ele tá dando o erro. Mas se eu reiniciar o serviço do apache tomcat ele volta a funcionar novamente. To monitorando no banco as conexões e me parece estar de boa :frowning:

vc acha que essas validações podem estar estourando as conexões ou não tem nada a ver?

tem que ver se as conexões estão sendo fechadas…

faz o seguinte: configure o pool de conexões (c3p0 por exemplo)

isso talvez resolva o problema das conexões…

pode ser que o banco esteja rejeitando a conexão depois de um tempo.

estou configurando o xml para o c3p0 mas o eclipse tá dando erro no value…Será que é pq estou usando o hibernate.cfg.xml?

e qnd eu coloco o jar no c3p0 na build path ele para de funcionar…

qual erro? como vc tá fazendo a configuração do c3p0?

não chega a dar um erro específico. Só de colocar os jars o eclipse acusa erro e não gera os .class