Hibernate com AS 7 da Sun e ThreadLocal

2 respostas
jupysilva

Galera estou com o seguinte problema:

Tem uma aplicacao que feita em Hibernate 2.1, Java 1.4 e Roda em um Application Server 7 da SUN. A aplicacao usa ThreadLocal para guardar a sessao do hibernate na Thread corrente. O problema eh que se o usuario abre duas janelas do browser ele recebe um exception de Closed Connection. Porque si a atividade que esta rodando em uma anela do browser terminar antes da outra vai fechar a conexao, entao a outra atividade que esta sendo ejecutada pela outra janela do browser ao fazer uma query ou qq outra atividade usando a sessao tome um exception de closed connection.

Eu coloquei um filtro para fazer o controle, mas nao esta dando muito certo.

Acho que com IE7 ou superior apresenta este problema, porque pelo que vi o IE7 e IE8 mantem a persistencia com o Servlet do container.

Alguem pode me ajudar?

[]s

Jupy

2 Respostas

ViniGodoy

Use um pool de conexões. Cada thread deve abrir uma conexão diferente com o banco. Veja para isso o Jakarta DBCP ou o projeto C3P0.

jupysilva

Fala ViniGodoy, eu ja usava o Pool de Conexao do propio IAS 7 da Sun, mas nao atentia bem as solicitacoes, entao eu mudei para C3P0.

Valeu pela resposta

[]s

Jupy

Criado 7 de maio de 2010
Ultima resposta 13 de mai. de 2010
Respostas 2
Participantes 2