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:
[code]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();
}[/code]
E está é minha chamada na JSP:
Se alguém puder me ajudar.
asousaj
Dezembro 9, 2013, 11:51am
#2
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.
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
Dezembro 10, 2013, 9:12am
#4
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
void service(HttpServletRequest request, HttpServletResponse response){};
O método service aceita todos os métodos HTTP, portanto, tanto o método GET quanto o POST. Para especificarmos como trataremos cada método, temos que escrever os métodos doGet e/ou doPost na nossa servlet:
void doGet(HttpServletRequest req, HttpServletResponse res){};
void doPost(HttpServletRequest req, HttpServletResponse res){};