Duvida Implementação Cadastro

7 respostas
O

Boa Tarde,
Trabalho com Infra e estou tentando entender um pouco de java, eu estou com um projeto para aprender
onde eu utilizei JSP -> Servlet - , oque acontece é que eu queria cadastrar algo como " Cadastrado com Sucesso "
porém não tenho ideia de como fazer isto, tem como eu chamar uma Janela no Servlet, ou ele me mandar
para uma outra pagina JSP…

Obrigado…

7 Respostas

drsmachado

Você pode apresentar esta mensagem com um alert javascript ou fazer a servlet direcionar para uma página contendo a mensagem.

Pesquise sobre o sendRedirect();

aajjbb
RequestDispatcher rd = request.getRequestDispatcher("adicionadoComSucesso.jsp");
		rd.forward(request, response);
O

Mas, Galera !!
Eu não preciso confirmar no servlet se ele foi cadastrado com sucesso…

No meu caso eu tenho o seguinte…

dao.GRAVAR();

Que chama a classe reponsavel pela gravação…

Eu teria que colocar um IF ? pois se eu colocar o “RequestDispatcher” logo abaixo que chamar o metodo, mesmo com ele
ele redireciona para pasta…

Obrigado…

aajjbb

ozjunior:

Eu teria que colocar um IF ? pois se eu colocar o “RequestDispatcher” logo abaixo que chamar o metodo, mesmo com ele
ele redireciona para pasta…
Obrigado…

nao entendi…

O

Desculpe,
eu não soube explicar.

if (acao.equals("gravartel")){
                 int ramal = Integer.parseInt(request.getParameter("ramal"));
                 String nome = request.getParameter("nome");
                 String departamento = request.getParameter("departamento");
                //Criando objeto
                Telefones tel = new Telefones();
                //Criando objeto
                TelefonesDAO dao = new TelefonesDAO();

                //setando valores

                tel.setNome(nome);
                tel.setRamal(ramal);
                tel.setDepartamento(departamento);

                dao.gravar(tel);

         RequestDispatcher rd = request.getRequestDispatcher("adicionadoComSucesso.jsp");
         rd.forward(request, response);

            }

No caso oque eu tenho é isto, ele envia para outra pagina logo após o metodo que grava ter sido
executado, a minha duvida é o seguinte…

Tem alguma forma de eu confirmar que os dados forma gravados ? ou está é a maneira correta ?

eros.stein

Você pode alterar sua classe DAO e mandar o método gravar() retornar true/false ou um int com um código de erro específico.
Com true/false basta você dar um try/catch.

Dessa forma você vai conseguir saber se deu algum erro ou não ao chamar gravar().

Edit:

não acredito que precisaria, mas aí vai um exemplo:

public boolean gravar() {
    ...
    try {
       ...
    } catch(Exception ex) {
       return false;
    }
    return true;
}

//classe que chama gravar

if(dao.gravar()) redirectToSuccessPage();
else redirectToFailurePage();
aajjbb

sim. esta certo. se o getRequestDispatcher retornar a pagina; é por que os dados foram realmente adicionados com sucesso; ah nao ser que ocorra alguma exception ou erro de validação; mas se isos acontecer. você vai ver no console;

Criado 31 de janeiro de 2011
Ultima resposta 7 de fev. de 2011
Respostas 7
Participantes 4