Faço o update no banco, mas o jsp continua mostrando as informações antigas [RESOLVIDO]

Pessoal,

Não sei se o problema é no codigo ou no TomCat! Tenho um jsp onde mostro a tabela com codigo e outras informações em cada linha. O usuário clica no codigo que deseja alterar as informações e o site direciona para a jsp de alteração dos dados. Após o update o jsp direciona para a tela inicial. Quando o jsp exibe as informações, não aparece as alterações feitas. Só as antigas! No banco está alterado. E quando eu fecho o internet explorer e entro novamente no site aparece as alterações.

O que eu posso estar fazendo errado no codigo? ou o que eu não configurei no TomCat?

Desde já agradeço,

Cristiano

vejamos vc tem uma grid clica para alterar um registro, altera ele e depois volta para a tela da grid? correto?
primeiro se vc estiver dando um voltar de javascript não vai funcionar mesmo… veja se vc esta refazendo a pesquisa da grid ao voltar para a tela de consulta… ou seja ao voltar ele tera que pesquisar denovo com os mesmos parametros passados com o filtro para mostrar o registro alterado…
se vc ja estiver fazendo isto… verifique se realmente ele esta alterando o registro direto no banco…

Correto. Mas o javascript executa o servlet novamente e não mostra as alterações na mesma sessão. Tenho que fechar o internet explorer e abrir novamente para aparecer a alteração.

Correto, mas o javascript executa o servlet novamente e não mostra as alterações. Tenho que fechar o internet explorer e abrir novamente. Estou achando que o problema é sobre a sessão. Acho que tenho que fazer algo no TomCat ou no codigo para atualizar as informações.

Help!!!

por q vc ao invéz de chamar a servlet por javascript não chama pelos métodos do java? segue um exemplo:


// ... seu código de inserção ou seja lá pra q
response.sendRedirect(response.encodeRedirectURL("suaPagina.jsp?param="+param));

isso deve levar vc direto para página como se fosse um reload na página e não um atualiza.

deve resolver. qualquer coisa posta ai

O problema é que a lista é baseada na opção escolhida em um que ao ser clicado chama o servlet, que preenche um um

com a tabela com os dados.
Tem como o Javascript rodar novamente a consulta?

Provavelmente o seu problema é o cache do seu navegador!
Se após a alteração a página não mudar, atualize a página (aperte F5)!

inclua as seguintes linhas dentro do elemento da sua página:

<META HTTP-EQUIV="Pragma" CONTENT="no-cache">
<META HTTP-EQUIV="Cache-Control" CONTENT="no-cache">
<META HTTP-EQUIV="Expires" CONTENT="-1">

Infelizmente não funcionou! Vou deixar o Javascript de lado, dessa vez, e chamar um jsp com os dados.

Mas gostaria de agradecer a ajuda e a explicação sobre o cache!!!

Obrigado!

Bem lembrado pelo colega:

[quote]Provavelmente o seu problema é o cache do seu navegador!
Se após a alteração a página não mudar, atualize a página (aperte F5)!

inclua as seguintes linhas dentro do elemento </head> da sua página:

view plaincopy to clipboardprint?
<META HTTP-EQUIV=“Pragma” CONTENT=“no-cache”>
<META HTTP-EQUIV=“Cache-Control” CONTENT=“no-cache”>
<META HTTP-EQUIV=“Expires” CONTENT="-1">
[/quote]

Utiliza esse no início de seu jsp de cadastro ou edição

&lt;% 
response.setHeader("Pragma", "no-cache");
response.setHeader("Cache-Control", "no-store");
response.setHeader("Expires", "0");
%&gt;

até + vê

Pessoal! Nos 48 minutos do segundo tempo… funcionou!!! Utilizei o codigo abaixo.

<%
response.setHeader(“Pragma”, “no-cache”);
response.setHeader(“Cache-Control”, “no-store”);
response.setHeader(“Expires”, “0”);
%>

Muito obrigado!!!

graças ao colega plic_ploc que me lembrou do controlador de cache do java conseguimos. Pronto beleza, agora qualquer duvida posta ai damos geito nisso. rsrsrsrs

edita seu assunto como resolvido p/ moçada ficar atenta.

Resolvido e funcionando!!!

Obrigado a todos!!!