Cache Hibernate

6 respostas
R

Olá,

usamos: SWING -> Hibernate

estou com o seguinte problema:
Qdo numa máquina inserimos um objeto, na outra máquina da rede não consegue ‘visualizar’ esta inserção. Somente saindo da aplicação, ou seja, reiniciando o hibernate.

já tentamos de diversas maneiras com o flush, mas sem sucesso.

Alguem teria alguma idéia do que pode estar acontecendo? Como devemos proceder para o hibernate, ao fazer uma consulta, atualizar sempre os objetos?

Att, Rodrigo

6 Respostas

Mauricio_Linhares

Vocês estão com o cache habilitado?

Se estiverem, desabilitem.

Outra coisa, lembre-se sempre de fechar as sessões depois de fazer o que for necessário fazer.

R

Maurício Linhares:
Vocês estão com o cache habilitado?

Se estiverem, desabilitem.

Outra coisa, lembre-se sempre de fechar as sessões depois de fazer o que for necessário fazer.

Ops… desculpe a ignorância, mas como desabilito o cache do hibernate?

:roll:

Rodrigo

Mauricio_Linhares

Veja se na configuração do Hibernate tem alguma coisa de “cache”. Se tiver, é só tirar.

A

possivelmente deve ser o cache de primeiro nivel, dentro da Session…
como disse o mauricio, se voce fechar e reabrir sempre a session, vai resolver isso…
agora se vc esta usando somente uma session (One Session in Aplication) vc vai ter que dar .clear() na session pra limpar o cache de primeiro nivel…

R

Uhmm…

Vou ver na segunda… digo… terça… acho que tem sim…

Muito obrigado…

Qquer coisa peço ajuda de novo.

Muito Obrigado.

:smiley:

Rodrigo

Hammer

bem, isso relamente eu acho q vai funionar pra mim

eu nao declarei o cache em nenhuma classe minha, isso ker dizer q o cache de segundo nivel esta desabilitade? ou nao obrigatoriamente?

e com respeito a fechar as sessoes estou com um problema, pois qd salvo e atualizo qualquer coisas ele consegue ver as coisas que nao estava vendo pq ele fecha a sessao, mas numa simples consulta ele nao fecha a sessao pq manda uma mensagem de erro dizndo q a sessao esta fechada =/

eu axo q session.close() deve ser a ultima coisa assim como eh o return, entao como posso proceder nesse caso? estou colocando session.clear() pra ver se funciona, mas gostaria de ter certeza dq iria funcionar. poderiam me dizer?

eu faco assim:

session.clear(); session = ConnectDB.getInstance();

sera q assim funciona?

Criado 28 de abril de 2006
Ultima resposta 20 de jun. de 2007
Respostas 6
Participantes 4