tenho uma aplicação com duas telas que mudo entre uma e outra via ajax. Primeira tela cadastro, segunda tabela com lista desses cadastros.
Primeiro insiro os dados na primeira tela da aplicação, depois clico no segundo radiobutoon para visualizar a tela com a lista cadastrada e o dado que acabei de inserir não aparece.
Se eu fechar o browser, limpar os dados dele e voltar a aplicação, os dados aparecem.
Esse problema acontece no Internet Explorer, mas no firefox e no chrome não. Meu problema é justamente aqui na empresa o Internet Explorer ser o browser padrão.
Alguém já passou por isso ?
Dados inseridos não atualizam na tela com I.E
W
3 Respostas
Será que isso ñ é problema de cookie ñ?
W
Como resolveria esse problema de cookie ? Saindo do programa para limpar o cookie nõa fica viável para o cliente e desabilitar o cookie não me parece uma boa prática
meu código está abaixo:
Meu servlet que recebe os dados da tela:
protected void service(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
String pacienteStr = request.getParameter("paciente");
String acompanhanteStr = request.getParameter("acompanhante");
String dataInicialStr = request.getParameter("dataInicial");
String comentarioStr = request.getParameter("comentario");
String servicoComboStr = request.getParameter("comboservico");
String size = request.getParameter("listsize");
String[] opcao = new String[Integer.parseInt(size)];
for(int i=0, j=1; i<opcao.length; i++, j++){
opcao[i] = request.getParameter("radio_"+j);
}
Session session = HibernateFactory.getSession();
PacienteDAO pacienteDAO = new PacienteDAO(session);
Paciente paciente = pacienteDAO.buscaPacientePorNome(session, pacienteStr);
Qualidade qualidade = new Qualidade();
qualidade.setData(Funcoes.StringParaData(dataInicialStr, "MM/yyyy"));
qualidade.setComentarioSugestao(comentarioStr);
qualidade.setServicoUtilizado(ServicoUtilizadoQualidade.valueOf(servicoComboStr));
qualidade.setPaciente(paciente);
qualidade.setAcompanhante(acompanhanteStr);
QualidadeDAO qualidadeDAO = new QualidadeDAO(session);
List<RespostaQualidade> listRrespostaQualidade = new ArrayList<RespostaQualidade>();
for(int i=0, j=1; i<opcao.length; i++, j++){
PerguntaQualidade perguntaQualidade = qualidadeDAO.buscaPerguntaPorOrdem(j);
RespostaQualidade respostaQualidade = new RespostaQualidade();
respostaQualidade.setQualidade(qualidade);
respostaQualidade.setNivelSatisfacao(NivelSatisfacao.valueOf(opcao[i]));
respostaQualidade.setPerguntaQualidade(perguntaQualidade);
listRrespostaQualidade.add(respostaQualidade);
}
qualidade.setRespostaQualidade(listRrespostaQualidade);
try {
qualidadeDAO.gravaQualidade(qualidade, paciente);
} catch (Exception e) {
String msg = "Erro ao cadastrar qualidade do paciente "+pacienteStr+".";
mensagem(request, response, msg);
} finally {
String msg = "Qualidade do paciente '"+pacienteStr+"' cadastrada com sucesso.";
mensagem(request, response, msg);
}
}
dao:
public void gravaQualidade(Qualidade qualidade, Paciente paciente) {
session.save(qualidade);
session.save(paciente);
Transaction tx = session.beginTransaction();
tx.commit();
session.close();
}
Em nenhum momento eu disse para desabilitar o cookie! =P
Você poderia criar um filtro e fazer a alteração do cookie para expirar quando o browser fechar.
Não te garanto que esse é seu problema, mas pode ser algo do tipo.
Criado 6 de agosto de 2012
Ultima resposta 6 de ago. de 2012
Respostas 3
Participantes 2