Eu tenho uma aplicacao java que executa varias queries…
Sao queries muito pesadas, que passam horas executando…
Acontece que estou recebendo um erro na minha aplicacao…
“com.ibm.db2.jcc.c.DisconnectException”…eu perco a minha conexao e minha aplicacao termina com um NullPointerException…
Gostaria de saber como contornar isso…e como parar aonde deu erro, reconectar e retornar para a mesma query e executar novamente…
De uma olhada na documentação do drive JDBC e nas configurações do DB2 para ver se não tem algum parametro de tempo de conexão ou timeout ou keep alive que possa ser aumentado, pois tem cara que a conexão está sendo fechada por ultrapassar algum limite deste tipo.
Você está trabalhando com pool de conexões? Se sim, o gerenciador das conexões deveria tratar isto de maneira transparente para você.
Voce está fazendo apenas select? Se sim, voce mesmo pode gerenciar onde parou. Agora se voce está fazendo insert/update/delete, dai voce teria que usar algum recurso extra (save point, commit por quantidade, etc).
Se você não está utilizando um pool de conexões, a primeira coisa que você deveria fazer era usar!!! Dê uma olhada no jakarta commons que tem um pool pronto para você usar!!