Exibir uma mensagem na mesma página, utilizando JSP e Servlet

2 respostas Resolvido
J

Eu gostaria de remover um objeto e ao clicar no botão de remover ele continuar na mesma página e exibir uma mensagem “removido com sucesso”. Da forma que eu tentei fazer, remove, mas ele direciona para aquela página branca do servlet.

JSP:

`<form action="http://localhost:8080/ProjetoCrud/AlunoRemoverServlet" method="post" onsubmit="return confirmDelete()">
            <input type="hidden" id="id_aluno" name="id_aluno" value="<%=a.getId()%>">
            <input type="hidden" id="nome_aluno" name="nome_aluno" value="<%=a.getNome()%>">
            <input type="hidden" id="url" name="url" value="<%=request.getRequestURL()%>">
        <button class="botao deletar" type="submit" name="submit">Deletar</button>
        </form>`

Servlet:

@Override
    protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
        String id_aluno = req.getParameter("id_aluno");
        alunoControlador.deletar(Integer.parseInt(id_aluno));
        resp.sendRedirect(req.getParameter("url") + "?remove=" + req.getParameter("nome_aluno"));
            
    }

2 Respostas

Lucas_Camara
Solucao aceita

No servlet, faça assim:

@Override
protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
	String id_aluno = req.getParameter("id_aluno");
	alunoControlador.deletar(Integer.parseInt(id_aluno));
	
	req.setAttribute("msg", "Aluno removido com sucesso!");
	req.getRequestDispatcher("nomeDaPagina.jsp").forward(req, resp);
}

E na página JSP:

<!-- coloque em qualquer lugar -->
${msg}
J

Resolveu meu problema. Muito obrigado.

Criado 27 de maio de 2016
Ultima resposta 30 de mai. de 2016
Respostas 2
Participantes 2