Galera, estou com um problema que é o seguinte, eu to fazendo um exercicio de estoque de merda, e quando eu vou usar qualquer metodo de busca sempre da esse erro " No value specified for parameter 1 "
Aqui o codigo de um dos metodos.
Classe Produto Categoria Dao
public ProdutoCategorias findCategoryById(Integer categoryId) throws Exception{
ConnectionFactory connF = new ConnectionFactory(); Connection conn = connF.getConnection(); String sql = "SELECT id, nome FROM produto_categorias WHERE id = ?"; try { PreparedStatement ps = conn.prepareStatement(sql); ps.setInt(1, categoryId); ProdutoCategorias produtoCategorias = new ProdutoCategorias(); ResultSet rs = ps.executeQuery(); if(rs.next()){ produtoCategorias.setNome(rs.getString("nome")); produtoCategorias.setId(rs.getInt("id")); }else{ throw new Exception("Categoria não encontrada"); } return produtoCategorias; } catch (Exception e) { throw e; }
SERVLET Buscar Categoria por ID
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
String message = “”;try { ProdutoCategoriasDao productCategoryDao = new ProdutoCategoriasDao(); ProdutoCategorias productCategory = productCategoryDao.findCategoryById(Integer.valueOf(request.getParameter("categoryId")));
HttpSession session = request.getSession();
session.setAttribute("produtoCategorias",productCategory); response.sendRedirect("ResultadoCategoria.jsp"); } catch (Exception e) { // TODO Auto-generated catch block message = "Erro ao encontrar categoria : "+e.getMessage(); }
}