Hibernate - Testar conexão com banco  XML
Índice dos Fóruns » Ferramentas, Frameworks e Utilitários
Autor Mensagem
leopoldof
GUJ Master

Membro desde: 07/03/2008 07:40:45
Mensagens: 1012
Offline

Tenho uma aplicação que trabalha com dois bancos, um local e um remoto...
Usando o Hibernate , a idéia é...
*Se banco remoto está funcionando, utiliza banco remoto
*Senão utiliza banco local
*Assim que conexão com banco remoto voltar, utilizar banco remoto

Para isso criei dois sessionFactory...um remoto e um para o banco local...
No hibernateUtil, tenho um método chamado getSession() que deve seguir as regrinhas que citei acima



O problema é que mesmo que eu derrube o servidor de banco de dados, ele sempre retorna true na compração "session.isConnected()", portanto sempre retornará a conexão do banco remoto, mesmo não estando conectado a ele

Tentei fazer com socket, como sujerido em outros tópicos daqui, mas daí ele somente verificaria se a máquina está ativa e não necessariamente se o servidor está funcionando.. também daria pra fazer criando uma conexão manualmente, mas daí a cada vez que acessar o banco, ele criaria uma nova conexão...perdendo desempenho na aplicação...

Não teria uma maneira de verificar se a conexão está ativa pelo sessionFactory ou pela sessão em si?

leopoldof
GUJ Master

Membro desde: 07/03/2008 07:40:45
Mensagens: 1012
Offline

Informação...que esqueci de citar.... estou usando o c3p0 para controlar o pool de conexões..
leopoldof
GUJ Master

Membro desde: 07/03/2008 07:40:45
Mensagens: 1012
Offline

Ninguém nunca fez uma aplicação com dois bancos?
leopoldof
GUJ Master

Membro desde: 07/03/2008 07:40:45
Mensagens: 1012
Offline

Bom...depois de muitos testes consegui fazer funcionar (em partes)



fiz vários testes e funcionou...
No caso...se inicializo o aplicativo conectado, depois derrubo o server db , ele retorna a base local...como presciso...
Só numa ocasião, ele trava e ainda não consegui resolver...
Quando puxo o cabo de rede fora....então parace que ele trava na instrução session.getConnection().getTransactionIsolation();..... fica aí nessa instrução...eternamente....
 
Índice dos Fóruns » Ferramentas, Frameworks e Utilitários
Ir para:   
Powered by JForum 2.1.8 © JForum Team