Problema com deleção em arquitetura MVC

3 respostas
D

Bom dia!

Não estou conseguindo executar um comando de deleção, no entanto não aparece o erro.

Esta é minha classe:

public void deletarObras(Upload upload) {
        String comando = "delete from foto where id = 2";  
        PreparedStatement p;  
        try {  
            p = this.conexao.prepareStatement(comando);  
            p.execute();  
        } catch (Exception e) {  
            e.printStackTrace();  
        }  
    }

Este é meu servlet:

protected void doPost(HttpServletRequest request, HttpServletResponse response)
            throws ServletException, IOException {
           
           FabricaConexao fabrica = new FabricaConexao();
           Connection conexao = fabrica.fazConexao();
        
           Upload upload = new Upload();
           
           JDBCUploadDAO dao  = new JDBCUploadDAO(conexao);  
           dao.deletarObras(upload);
        
           response.sendRedirect("index.jsp");
           fabrica.fecharConexao();
    }

E está é minha chamada na JSP:

<a href="DeletarObras?=id?">Deletar</a>

Se alguém puder me ajudar.

3 Respostas

asousaj

Tá testando numa IDE?
Nenhum erro na console?
Qualquer coisa coloca um System.out.println(“Alguma coisa”) depois da p.execute() e verifica se sai na console ao testar.

D

Estou usando o Netbeans, realmente a minha DAO e o servlet não estão se comunicando, pq o system não foi exibido.

asousaj

Cara sabe a diferença do doPost para o doGet?
Desta forma(usando xxx ) estás a usar o GET, ou seja o doPost jamais será invocado. Renomeie para doGet e teste novamente.

doPost é para quando usa um form com method="post"
Sua servlet pode ter os 2(doGet e doPost), o que determina é o método usado no request.

Texto da apostila da Caelum http://www.caelum.com.br/apostila-java-web/servlets/#5-10-get-post-e-metodos-http

Criado 9 de dezembro de 2013
Ultima resposta 10 de dez. de 2013
Respostas 3
Participantes 2