Boa tarde ,
tenho o seguinte problema , uso um pool de conexoes e ele funciona normalmente , so que quando executo um numero de consultas superior a 7 , ele não consegue pegar a conexão , e explode.
//abro minha conexaoConnectionconnection=dbConnection.getConnection();//e no final da conexao fecho<%dbConnection.closeConnection(connection);%>
Você poderia tentar ao invés de pegar várias conexões, pegar apenas uma conexão. E criar vários Statement a partir dela.
Pelo que parece na sua quarta linha de código você está utilizando JSP. Isso implica em algumas coisas:
1 - Você pode instanciar o banco uma única vez, pegar o objeto de conexão (Connection) e setá-lo como atributo de aplicação, de forma que ficará disponível para qualquer JSP ou Servlet da aplicação. Você pode fazer isso num servlet através do objeto ServletContext ou através do objeto implícito application em uma JSP.
2 - JSPs manipulando banco de dados é uma prática ruim de programação. Se for só para vc tudo bem, mas se for um trabalho ou projeto acadêmico é melhor deixar isso a cargo de um Servlet.
Abraços!!!
L
lacerdaPJ
Ok , vou procurar , olhar isto , mas tem idéia do motivo pelo o qual esta explodindo a partir de um número x de consultas ?
R
rr_castanedaPJ
Opa!!!
Bom, a razão???
Eu não faço idéia, mas ao invés de mandar o próprio pool encerrar as conexões, você poderia mandar elas se encerrarem.
Ou seja, ao invés de fazer:
<%dbConnection.closeConnection(connection);%>
fazer:
<%connection.close() %>
Essa é minha única idéia, eu nunca me utilizei de um pool de conexões, e não sei muito bem como isso está funcionando no seu código. =(
Um abraço!
L
lacerdaPJ
Opa !!!
Utilizei o que você sugeriu , más não funcionou , aparentemente este encerramento esta certo , pois utilizamos aqui há muito tempo . Debugei várias vezes , e sempre quando ele abre a conexao consegue fechar , más tem hora que quando vai pegar a conexão explode.
L
lacerdaPJ
opa , também esqueci de falar estou usuando um bean para abrir a conexão.
Manda o código completo então… Aí o pessoal pode dar uma olhada melhor.
Ou então diz qual o pool de conexões q vc usa, e onde pode-se conseguir informações sobre ele e sua implementação. E se foi feito pela sua companhia, aí o melhor lugar pra conseguir uma solução é com os desenvolvedores do pool mesmo.