Solucionado (ver solução)
Solucionado
(ver solução)
5
respostas

Problemas na conversão para int

Boa tarde, estou com dificuldade na conversão para int, ele identifica como String e gera o erro. Abaixo o código.

package br.com.agendaContato.servlets;

import java.io.IOException;
import java.sql.Connection;
import java.util.HashMap;
import java.util.Map;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import br.com.agendaContato.bd.conexao.Conexao;
import br.com.agendaContato.jdbc.JDBCContatoDAO;
import com.google.gson.Gson;

public class DeletaContato extends HttpServlet{
    private static final long serialVersionUID = 1L;

    public DeletaContato(){
        super();
    }

    protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {

        proccess(request, response);
    }

    protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        proccess(request, response);
    }

    private void proccess(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        // Recebendo o idcontato que desejamos excluir
        int id = (Integer.parseInt(request.getParameter("id")));

        // Chamar o método que grava o objeto usuario no banco de dados
        Conexao conec = new Conexao();
        Connection conexao = conec.abrirConexao();
        JDBCContatoDAO jdbcContato = new JDBCContatoDAO(conexao);
        boolean retorno = jdbcContato.deletarContato(id);
        conec.fecharConexao();

        // Para retornar uma mensagem para o usuario
        Map<String, String>msg = new HashMap<String, String>();
        if(retorno){
            msg.put("msg", "Contato deletado com sucesso.");
        }else{
            msg.put("msg", "Não foi possível deletar o contato.");
        }
        String json = new Gson().toJson(msg);
        response.setContentType("application/json");
        response.setCharacterEncoding("UTF-8");
        response.getWriter().write(json);

    }

}

O erro acontece nessa linha: int id = (Integer.parseInt(request.getParameter("id")));

Podem me ajudar?

Att

5 respostas

Oi Maria, tudo bem?

Qual o erro que está acontecendo? NullPointerException? Já vai conferindo se o valor está chegando mesmo no parâmetro.

O erro que está acontecendo é o seguinte: java.lang.NumberFormatException: null

Verifiquei aqui, o valor do parametro não está vindo

Oi Maria, então é isso que você precisa investigar, o motivo do valor não está chegando. Olhe o link que você clica e vá tentando descobrir a razão. Qualquer dúvida nos avise :).

solução!

Encontrei, no meu ajax tava passando data: "id"+id, não estava colocando o = antes de fechar aspas