Eperar alguns segundo antes de enviar um response.sendRedirect()

7 respostas
JJjava

ola pessoal,
a jsp executa um sql, e entao mostra uma mensagem se foi cadasrtadado com sucesso ou nao, depois disso faz um response.sendRedirect() mas queria q ela aguardace 3 segundo para o ususario ler a mensagem como faço isso ?
Grato.

7 Respostas

GabrielCardelli

Thread.sleep(3000);

JJjava

nao deu certo ele fica demorando para carregar a outra pagina e depoi svou para onde tinha q ir sem exibir a mesagem

<%


            User_info userinfo = new User_info();

            HttpSession sessao = request.getSession(true);
            if((String)sessao.getAttribute("control") == null)
            {
                 response.sendRedirect("/ticket/index.jsp");
            }
            else
            {
                date = new Date();
                hour = Calendar.getInstance();
                padrao = new SimpleDateFormat("dd/MM/yyyy");
                data_abertura = padrao.format(date);
                hora_abertura = String.format("%tT\n",hour);
                ip = request.getRemoteAddr();
                desc_problema = request.getParameter("problema");
                nome = userinfo.getUser_Name((String)sessao.getAttribute("control"));
                welcome = "Olá, "+ nome +" !";
                login = (String)sessao.getAttribute("control");
                SQL_set_ticket set_ticket = new SQL_set_ticket();
                set_ticket.setTicket(login, data_abertura, hora_abertura, ip, desc_problema);
                out.println("Ticket cadastrado com sucesso");
                Thread.sleep(3000);
                response.sendRedirect("/ticket/home.jsp");
            }
        %>
Alexandre_Saudate

Seria melhor vc fazer esse controle via JSP, mesmo. Assim:

  1. Faça um bloco if/else (na página) que, quando tiver a mensagem, a exibe, se não tiver, redireciona.
  2. Coloque um meta-http-refresh na página com valor 3 ( ou 3000, não lembro de cabeça).
  3. Manda pra JSP que vai exibir a mensagem.
  4. Retira a mensagem do request da página.
  5. Aguarde!

[]´s

Alexandre_Saudate

A propósito… acabei de reparar que você faz a execução do código numa JSP. Que tal usar uns servlets, heim?

[]´s

JJjava

asaudate:
A propósito… acabei de reparar que você faz a execução do código numa JSP. Que tal usar uns servlets, heim?

[]´s


eu tava usando um bean mas nao sei como fazer response.sendRedirect em java mesmo

Alexandre_Saudate

JJjava:
asaudate:
A propósito… acabei de reparar que você faz a execução do código numa JSP. Que tal usar uns servlets, heim?

[]´s


eu tava usando um bean mas nao sei como fazer response.sendRedirect em java mesmo

Juro que não entendí a afirmação… você está querendo dizer que não sabe como fazer num servlet, é isso? O response é passado como parâmetro, você usa do mesmo jeito como você usou na JSP.

Faz uma coisa? Tem um livro chamado Use a cabeça JSP & Servlets. Dê uma olhadinha (é muito bom pra iniciantes, e serve pra tirar dúvidas rapidamente).

[]´s

JJjava

asaudate:
JJjava:
asaudate:
A propósito… acabei de reparar que você faz a execução do código numa JSP. Que tal usar uns servlets, heim?

[]´s


eu tava usando um bean mas nao sei como fazer response.sendRedirect em java mesmo

Juro que não entendí a afirmação… você está querendo dizer que não sabe como fazer num servlet, é isso? O response é passado como parâmetro, você usa do mesmo jeito como você usou na JSP.

Faz uma coisa? Tem um livro chamado Use a cabeça JSP & Servlets. Dê uma olhadinha (é muito bom pra iniciantes, e serve pra tirar dúvidas rapidamente).

[]´s


eu estou começando e as vezes fico confuso com servle tmas agora oq vc me falou fez sentido e a mesma coisa e so passar o reponse…
eu tinha dito q esta usando um bean para executar o sql mas nao hora de fazer o redirecionamento da pagina nao consegui…
comprei esse livro http://www.americanas.com.br/AcomProd/1472/839975 e estou estudando jsp, servlets,hibernate com ele
wlw

Criado 27 de fevereiro de 2010
Ultima resposta 27 de fev. de 2010
Respostas 7
Participantes 3