Erro no deletar cidade me juda

1 resposta
D

Quero fazer o deletar cidade como faco ?

olha a classe cidade.jsp

<%@page contentType="text/html" pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
        <title>Cadastro Ciddes</title>
        <link rel="stylesheet" href="../css/estilo.css" type="text/css"/>
        <link rel="stylesheet" href="css/estilo.css" type="text/css"/>
    </head>
    <body>
        <jsp:include page="../WEB-INF/jsps/cabecalho.jsp"/>
        <h1>
            <label>Cadastro cidades</label>
        </h1>
        <form action="cidadeServlet" method="post">
            <label>Cidade</label>
            <input type="text" name="nome" value="" size="40" />
            <label>UF</label>
            <input type="text" name="uf" value="" size="20" />
            <input type="submit" value="Cadastrar" name="nome" />
            <a href="/cinevelApp">Voltar</a>

        </form>

        <form action="cidadeServlet" method="post">
            <h2>
                <input type="text" name="nome" value="" size="20" />
                <input type="submit" value="Deletar Cidade" name="nome" />
            </h2>
        </form>
        <%
            if (request.getAttribute("msg") != null) {
        %><%=request.getAttribute("msg")%><%
            }
        %>
        <jsp:include page="../WEB-INF/jsps/rodape.jsp"/>

        <div id="footer">
            <h2>
                <a href="../Listar/listarCidade.jsp" target="_blank">Listar Cidades</a>
            </h2>
        </div>
    </body>
</html>

Tenho que fazer nesse form ou em outro ou tenho que criar um novo servlet

@WebServlet(name = "controlador", urlPatterns = {"/cidade/cidadeServlet", "/cinema/cinemaServlet", "/sala/salaServlet", "/filme/filmeServlet", "/sessao/sessaoServlet"})
public class Controlador extends HttpServlet {

    @Override
    protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
        String uri = req.getServletPath();
        String msg = "";
        String path = "";
        if (uri.equalsIgnoreCase("/cidade/cidadeServlet")) {
            //todo o codigo para cadastro de cidades


            Cidade cidade = new Cidade(req.getParameter("nome"), req.getParameter("uf"));

            msg = CidadeDao.inserirCidade(cidade);
            path = "cidade.jsp";

        }
           if (uri.equalsIgnoreCase("/cidade/cidadeServletDelete")) {
                Cidade cidade1 =
                   CidadeDao.buscarCidade(new Cidade(req.getParameter("cidade"), null));
            msg = CidadeDao.deletarCidade(cidade1);
         path= "cidade.jsp";
          
           }

Como excluir da List ?
ele ta cadastrando e listando so nao to conseguindo excluir

public class CidadeDao {

    private static List<Cidade> cidades = new ArrayList<Cidade>();

    public static String inserirCidade(Cidade cidade) {
        try {
            cidades.add(cidade);
            return "Cidade cadastrada com sucesso";
        } catch (Exception e) {
            return "Erro ao inserir a cidade";
        }
    }

    public static List<Cidade> listarCidade() {
        return CidadeDao.cidades;
    }

    public static Cidade buscarCidade(Cidade nome) {
        try {
            for (Cidade cidade : cidades) {
                if (cidade.getNome().equalsIgnoreCase(nome.getNome())) {
                    return cidade;
                }
            }
        } catch (Exception e) {
            return null;
        }
        return null;
    }

    public static String deletarCidade(Cidade cidade) {
        try {
            Cidade result = buscarCidade(cidade);
            for (int i = 0; i < cidades.size(); i++) {
                if (cidades.get(i).equals(result)) {
                    cidades.remove(i);
                }
            }
        } catch (Exception e) {
            return "Objeto não encontrado";
        }
        return "Objeto não encontrado2";
    }
}

1 Resposta

alanrodrigues

Me corrija se eu estiver errado… mas n seria?

<form action="cidadeServletDelete" method="post">  
            <h2>  
                <input type="text" name="nome" value="" size="20" />  
                <input type="submit" value="Deletar Cidade" name="nome" />  
            </h2>  
        </form>

e depois…

if (uri.equalsIgnoreCase("/cidade/cidadeServletDelete")) {  
                Cidade cidade1 =  
                   CidadeDao.buscarCidade(new Cidade(req.getParameter("nome"), null));  
            msg = CidadeDao.deletarCidade(cidade1);  
         path= "cidade.jsp";  
            
           }

???

Criado 14 de abril de 2013
Ultima resposta 14 de abr. de 2013
Respostas 1
Participantes 2