Ola galera,estou comoseguinte problema.Tenho uma pagina de busca que recebe valores vindo de um servlet em uma lista,mas quando procuro via jsp um valor valido no banco da um erro,que posto abaixo.Segue tambem uma parte do codigo.
type Exception report
message
description The server encountered an internal error () that prevented it from fulfilling this request.
exception
org.apache.jasper.JasperException: An exception occurred processing JSP page /consulta_produto.jsp at line 53
50: <th>Produto</th>
51: <th>Embalagem</th><br>
52: <cr:forEach var="registros" items="${sessionScope.lista}">
53: <td>${lista.id_Produto}</td>
54: <td>${lista.descricao_Produto}</td>
55: <td>${lista.embalagem_Produto}</td>
56: teste
Stacktrace:
org.apache.jasper.servlet.JspServletWrapper.handleJspException(JspServletWrapper.java:505)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:416)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:342)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:267)
javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
org.netbeans.modules.web.monitor.server.MonitorFilter.doFilter(MonitorFilter.java:390)
br.com.oriom.CotacaoWeb.serveletes.Servelet_ProdutoC.processRequest(Servelet_ProdutoC.java:117)
br.com.oriom.CotacaoWeb.serveletes.Servelet_ProdutoC.doPost(Servelet_ProdutoC.java:129)
javax.servlet.http.HttpServlet.service(HttpServlet.java:637)
javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
org.netbeans.modules.web.monitor.server.MonitorFilter.doFilter(MonitorFilter.java:390)
root cause
java.lang.NumberFormatException: For input string: "id_Produto"
java.lang.NumberFormatException.forInputString(NumberFormatException.java:48)
java.lang.Integer.parseInt(Integer.java:447)
java.lang.Integer.parseInt(Integer.java:497)
javax.el.ListELResolver.coerce(ListELResolver.java:166)
javax.el.ListELResolver.getValue(ListELResolver.java:51)
javax.el.CompositeELResolver.getValue(CompositeELResolver.java:53)
org.apache.el.parser.AstValue.getValue(AstValue.java:118)
org.apache.el.ValueExpressionImpl.getValue(ValueExpressionImpl.java:186)
org.apache.jasper.runtime.PageContextImpl.proprietaryEvaluate(PageContextImpl.java:925)
org.apache.jsp.consulta_005fproduto_jsp._jspx_meth_cr_005fforEach_005f0(consulta_005fproduto_jsp.java:325)
org.apache.jsp.consulta_005fproduto_jsp._jspService(consulta_005fproduto_jsp.java:268)
org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:374)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:342)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:267)
javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
org.netbeans.modules.web.monitor.server.MonitorFilter.doFilter(MonitorFilter.java:390)
br.com.oriom.CotacaoWeb.serveletes.Servelet_ProdutoC.processRequest(Servelet_ProdutoC.java:117)
br.com.oriom.CotacaoWeb.serveletes.Servelet_ProdutoC.doPost(Servelet_ProdutoC.java:129)
javax.servlet.http.HttpServlet.service(HttpServlet.java:637)
javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
org.netbeans.modules.web.monitor.server.MonitorFilter.doFilter(MonitorFilter.java:390)
note The full stack trace of the root cause is available in the Apache Tomcat/6.0.18 logs.
//parte da DAO que faz a busca
public List listaProdutoDesc(Produto_Bean produto) throws Exception {
//metodo retorna uma lista de valores obtidos pela query
Connection conex = null;
PreparedStatement pst = null;
ResultSet rst = null;
if (produto == null) {
throw new Exception("Valor não pode ser nulo");
}
try {
//a pessoa tem que colocar o % antes do valor
String query = "SELECT * FROM produtos WHERE produto like ? ";
conex = this.conexao;
List<Produto_Bean> lista = new ArrayList<Produto_Bean>();
pst = conex.prepareStatement(query);
pst.setString(1, produto.getDescricao_Produto());
rst = pst.executeQuery();
while (rst.next()) {
int codigo = rst.getInt(1);
String descricao = rst.getString(2);
String embalagem = rst.getString(3);
lista.add(new Produto_Bean(codigo, descricao, embalagem));
}
return lista;
} finally {
Fabrica_Conexao.close(conex, pst, rst);
}
}
//servlet
else if (cmd.equalsIgnoreCase("procura")) {//formulario de consulta de produtos
String filtroId=request.getParameter("filterID");
String filtroDesc=request.getParameter("filterDes");
if (!filtroId.equals("")) {
try {
produto.setId_Produto(Integer.parseInt(filtroId));
lista = dao.listaProdutoID(produto);
sessao.setAttribute("lista", lista);
rd = request.getRequestDispatcher("/consulta_produto.jsp");
} catch (NumberFormatException num) {
JOptionPane.showMessageDialog(null, "Numero mal formatado", "Oriom", JOptionPane.INFORMATION_MESSAGE);
} catch (Exception ex) {
JOptionPane.showMessageDialog(null, ex.getMessage(), "Oriom", JOptionPane.INFORMATION_MESSAGE);
}
}else {
try {
produto.setDescricao_Produto(request.getParameter("filterDes"));
lista = dao.listaProdutoDesc(produto);
sessao.setAttribute("lista", lista);//disponibiliza a valiavel lista para a sessão
rd = request.getRequestDispatcher("/consulta_produto.jsp");
} catch (Exception ex) {
JOptionPane.showMessageDialog(null, ex.getMessage(), "Oriom", JOptionPane.INFORMATION_MESSAGE);
}
}