Olás,
Gostaria de saber se alguém já teve problemas com o
sendRedirect..
O meu
caso é o seguinte:
Tenho
um servlet que executa várias ações, dependendo da solicitação. na maior parte
do tempo ele faz exibicao de telas (formularios) e atualização de
dados.
O sendRedirect é usado neste servlet em alguns
momentos, com um redirecionamento para o próprio servlet, com o novo
pedido.
Por
exemplo: o servlet recebe um pedido de atualização de dados, faz a
atualização e redireciona para uma solicitação de exibição
de tela.
De vez em quando
este redirecionamento não é completado, o código da primeira solicitação acaba
(como no exemplo citado, a atualização dos dados é completada), mas a
segunda parte não é feita, a segunda solicitação não chega ao servlet, e o
navegador exibe aquela página de erro de 'a página não pode ser exibida..', o
segundo perdido se perde totalmente, é terrível!!!
:-)
E pela minha análise feita até agora isto é totalmente
aleatório, faço um pedido, recebo mensagem de erro, faço o mesmo pedido
logo em seguida, a página retorna.. ou 2, 3 retornam, 1
não..
Estive guardando alguns dados sobre as requisições - como número de
acessos no momento, navegador utilizado, etc.. - pra tentar achar alguma
causa pra este comportamento, mas até agora não encontrei nada que desse alguma
luz.. :-(
A única coisa que já percebi é que dos vários
lugares que uso o sendRedirect é só neste - atualização de dados e exibição de
tela - que este problema tem acontecido. E o que tem de diferente neste caso?
Bom, os dados que chegam na primeira solicitação (de atualização de dados)
costumam ser muitos.. e a atualização dos dados às vezes demora um tempinho..
mas o estranho é que quando acontece o erro a resposta vem até relativamente
rápido, diferentemente de quando a todo o processo é executado. lembrando aqui
que mesmo quando o erro acontece a atualização é feita, a segunda requisição é
que se perde..
Bom..
fiquei pensando algumas coisas.. provavelmente nada a ver, chute total...
se for muita bobagem desculpem, mas... aí vai..
se
pode ser porque no sendredirect é usado get, e o get às vezes está sendo
perdido.. pode ser? (detalhe: a segunda solicitação não ultrapassa o
limite de caracteres do get..), tem como usar post pra esta minha
necessidade?
alguma
configuração no servidor?
no
servidor em questão o servlet está rodando no jrun, com jre 1.3 da
sun.
Isto
está acontecendo somente em uma empresa, o servlet roda em outras. O acesso
feito de uma máquina lá de dentro não tem mostrando problema, diferentemente de
um acesso feito de fora..
alguma
característica do cliente que está acessando?
se o
cliente está acessando por trás de alguma estrutura que atrapalhe este
processo..
vi que
isto já aconteceu usando linha discada, mas também de dentro da uma
outra empresa, com estrutura linha dedicada, proxy,
etc..
Não
sei mais o que testar.. Se alguém tiver alguma pista, por favor me indique!!
Estou desesperada!!! :-)
Não
gostaria de deixar de usar o redirecionamento pois isto no meu caso (de
atualização de dados) pode causar uma série de probleminhas com back do browser,
cache, etc, etc..
Aguardo qq ajuda!!!
Obrigada,
Carol.
|
[java-list] =?iso-8859-1?Q?sendRedirect=28=29_-_por_que_=E0s_vezes_n=E3o_f?==?iso-8859-1?Q?unciona=3F?=
Carolina Diniz [EMAIL PROTECTED] Fri, 08 Mar 2002 10:13:03 -0800
- Re: [java-list] sendRedirect() - por que ... Carolina Diniz [EMAIL PROTECTED]
- Re: [java-list] sendRedirect() - por... Renan Milfont
- Re: [java-list] sendRedirect() - por... Douglas Drummond
- Re: [java-list] sendRedirect() - por... Leandro de Oliveira e Ferreira
- Re: [java-list] sendRedirect() - por... Shazzannn